Módulo I. Desarrollo de habilidades del pensamiento lógico...

161

Transcript of Módulo I. Desarrollo de habilidades del pensamiento lógico...

Page 1: Módulo I. Desarrollo de habilidades del pensamiento lógico ...prouniversitarios.org/site/recursos/material-de-apoyo/tecnologias-de... · Módulo I. Desarrollo de habilidades del
Page 2: Módulo I. Desarrollo de habilidades del pensamiento lógico ...prouniversitarios.org/site/recursos/material-de-apoyo/tecnologias-de... · Módulo I. Desarrollo de habilidades del

Módulo I. Desarrollo de habilidades del pensamiento lógico - matemático Teoría de conjuntos

Un conjunto es una colección de objetos, cada uno de los cuales se dice un elemento del mismo. Usualmente, designaremos los conjuntos mediante letras mayúsculas del tipo A; B, etc., reservándonos el uso de algunos caracteres especiales para representar ciertos conjuntos numéricos. LÓGICA Y CONJUNTOS DEFINICIONES:

Conjunto:

Concepto intuitivo: Lista, colección o clase de objetos, bien definidos. Notación: por letras mayúsculas. Sus elementos por letras minúsculas. Se puede definir: por extensión: Enumera cada uno de los elementos del conjunto. Ejemplo: A = {-2,1,3,4} Por comprensión: cuando se enuncia una propiedad que deben tener sus elementos. Ejemplo: B = {x/x es número racional}

C = {x/x = 2n-1 + 1, nN}

Relación de pertenencia: Para indicar que un elemento pertenece o no a un conjunto se utiliza los signos y respectivamente. Conjuntos numerables y no numerables: Un conjunto es numerable si consta de un cierto número de elementos distintos donde el proceso de contar puede acabar.

Conjunto vacío: Carece de elementos. Se denota por el símbolo ó { } y se representa por A

AxAxx

Conjunto unitario: Es el que tiene un solo elemento.

Conjunto universal: Es un conjunto que contiene todos los conjuntos que se están tratando.

Símbolo: U y se representa por U = {x/x A x A; siendo A cualquier conjunto} Igualdad de conjuntos: Dos conjuntos son iguales si y solo si tienen los mismos elementos. Es decir, A es igual a B si cada elemento que pertenece a A pertenece también a B y si cada elemento que pertenece a B pertenece también a A. Se denota la igualdad de los conjuntos A y B por A = B.

Subconjunto: sean A y B dos conjuntos. Se dice que A es un subconjunto de B, (A B), si y solo si todo elemento de A es también elemento de B.

: símbolo de subconjunto o contenencia, inclusión. Simbólicamente:

BxAxxBA

BA se lee A es un subconjunto de B o

BA se lee A no es un subconjunto de B o

Page 3: Módulo I. Desarrollo de habilidades del pensamiento lógico ...prouniversitarios.org/site/recursos/material-de-apoyo/tecnologias-de... · Módulo I. Desarrollo de habilidades del

Propiedades de la inclusión:

i) El conjunto vacío, , se considera subconjunto de todo conjunto.

ii) Si A no es subconjunto de B, es decir, BA ; entonces hay por lo menos un elemento de A que no el el emento de B.

iii) Todo conjunto es subconjunto de si mismo, es decir, si A es cualquier conjunto entonces AA Subconjunto propio: Ya que todo conjunto A es subconjunto de si mismo, se dice que B es un subconjunto propio de A, si: i) B es un subconjunto de A, y ii) B no es igual a A

Es decir, B es subconjunto propio de A si: AB y AB

Comparabilidad: Dos conjuntos A y B son comparables si BA o AB , es decir, si uno de los conjuntos es subconjunto del otro.

Dos conjuntos A y B se dicen no comparables si ABBA Conjunto potencia: Se define el conjunto potencia o conjunto de partes de un conjunto dado A como el conjunto de todos los subconjuntos de A. Se representa como P (A). Conjuntos disjuntos: Dos conjuntos A y B son disjuntos si y sólo si no tienen elementos comunes. Diagramas:

Diagrámas de Venn. En ocasiones, es útil representar conjuntos genéricos mediante sencillos esquemas geométricos, llamados diagramas de Venn. Si bien pueden parecer algo ingenuos y carecen de sentido matemático preciso, configuran un método de visualización que puede ayudar al lector a comprender y familiarizarse con las nociones (sin duda abstractas) de la teoría de conjuntos. Por ejemplo, en las figuras que siguen a continuación ilustramos las nociones de inclusión, pertenencia y conjunto universal: Inclusión: 𝐴 ⊂ 𝐵

Pertenencia y conjunto universal (U):

Page 4: Módulo I. Desarrollo de habilidades del pensamiento lógico ...prouniversitarios.org/site/recursos/material-de-apoyo/tecnologias-de... · Módulo I. Desarrollo de habilidades del

Lineales:

Se establece la representación mediante líneas donde se identifican órdenes jerárquicos. Ejemplo:

1) A B Se representa:

2) Si A B y B C, entonces se representa: 3) Sean los conjuntos: A = {1}; B = {1, 2}; C = {1, 2, 3}; D = {1, 2, 4} Su representación lineal sería: 1.1.2. Operaciones entre conjuntos

Definiremos en lo que sigue las operaciones conjuntistas elementales, estableciendo además sus propiedades básicas. Salvo la primera, que involucra un solo conjunto, las restantes son operaciones binarias, que a cada par de conjuntos le asocian otro (el resultado de la operación), formalmente similares a las operaciones numéricas, como la suma y el producto. Supondremos que todos los conjuntos en cuestión están contenidos en un conjunto de referencia U y visualizaremos cada una de las operaciones definidas a través del correspondiente diagrama de Venn. Complemento: Si A es un conjunto, definimos su complemento en la forma:

Page 5: Módulo I. Desarrollo de habilidades del pensamiento lógico ...prouniversitarios.org/site/recursos/material-de-apoyo/tecnologias-de... · Módulo I. Desarrollo de habilidades del

Propiedades del complemento:

Intersección: Si A y B son conjuntos, definimos su intersección en la forma:

Propiedades de la intersección:

Union: Si A y B son conjuntos, definimos su unión en la forma

Page 6: Módulo I. Desarrollo de habilidades del pensamiento lógico ...prouniversitarios.org/site/recursos/material-de-apoyo/tecnologias-de... · Módulo I. Desarrollo de habilidades del

Propiedades de la unión:

Notemos la conexión existente entre las anteriores operaciones de conjunto y los conectivos lógicos de negación, conjunción y disyunción, relación que quedará aún más evidenciada en las siguientes propiedades, que vinculan entre sí a la intersección y la unión. Las dos primeras son las propiedades distributivas de la intersección (la unión) con respecto a la unión (la intersección), mientras que las dos últimas son las leyes de De Morgan, donde veremos que cualquiera de estas dos operaciones puede obtenerse a partir de la otra y la complementación. Propiedades distributivas y Leyes De Morgan.

Diferencia: Si A y B son conjuntos, definimos su diferencia en la forma:

Page 7: Módulo I. Desarrollo de habilidades del pensamiento lógico ...prouniversitarios.org/site/recursos/material-de-apoyo/tecnologias-de... · Módulo I. Desarrollo de habilidades del

Diferencia simétrica: Si A y B son conjuntos, definimos su diferencia simétrica en la forma:

Propiedades de la diferencia simétrica:

Producto Cartesiano. Si A y B son conjuntos, definimos el producto cartesiano de A y B como el conjunto

Cuyos elementos (a; b) se denominan pares ordenados. Si bien podríamos definir formalmente la noción de par ordenado, dada su sencillez la consideraremos un concepto primitivo, cercano a la intuición del lector.

Notemos que cada objeto de S x T está determinado por dos elementos, uno de S y otro de T, dados en ese orden, y que por ejemplo consideramos distintos los pares (1; 2) y (2; 1).

Page 8: Módulo I. Desarrollo de habilidades del pensamiento lógico ...prouniversitarios.org/site/recursos/material-de-apoyo/tecnologias-de... · Módulo I. Desarrollo de habilidades del

Ejemplo práctico:

Un alumno de la facultad, efectúa una encuesta sobre un grupo de 100 estudiantes, acerca de los hábitos de estudio en la Biblioteca de Ingeniería y aporta los siguientes datos: Estudian trigonometría: 40 Estudian álgebra: 55 Estudian geometría: 55 Estudian trigonometría y álgebra: 15 Estudian trigonometría y geometría: 20 Estudian álgebra y geometría: 30 Estudian las tres materias: 10 No van a la biblioteca: 5 ¿Puede asegurarse que la encuesta realizada es correcta? Desarrollo: Sean T = {x/x estudia trigonometría} A = {x/x estudia álgebra} G = {x/x estudia geometría} Observación: Para desarrollar esta clase de ejercicios se recomienda: A) “Dibujar” el diagrama de Venn y ubicar los datos dados. B) Se debe iniciar por aquel que puede señalarse con certeza. C) Una vez que el diagrama se completa, se puede leer el número de estudiantes que estudia cualquier combinación de materias. Gráficamente: T A 15 5 20 10 10 20 15 G U Analíticamente:

n(T U A U G) = n(T) + n(A) + n(G) – n(TA) – n(TG) – n(GA) + n(TAG) n(T U A U G) = 40 + 55 + 55 - 15 - 20 - 30 + 10 = 95 95 Estudiantes que asisten a la biblioteca. 100 – 95 = 5 Estudiantes que no asisten a la biblioteca. Por lo tanto la encuesta está bien realizada.

Page 9: Módulo I. Desarrollo de habilidades del pensamiento lógico ...prouniversitarios.org/site/recursos/material-de-apoyo/tecnologias-de... · Módulo I. Desarrollo de habilidades del

1.2. Relaciones y funciones

El concepto de función es una de las piezas fundamentales del vocabulario Conjuntista. Para introducirlo necesitamos otros conceptos previos. Tenemos definidos los pares desordenados {a, b}, y es claro que de una igualdad {a, b} = {c, d} no podemos concluir necesariamente que a = c y b = d, pues {a, b} = {b, a}, y perfectamente podría suceder que a = d y b = c. Esto hace conveniente definir el par ordenado con primera componente a y segunda componente b como (a, b) = {{a}, {a, b}}. Entonces: Teorema: Si a, b, c, d son conjuntos cualesquiera, entonces (a, b) = (c, d) si y sólo si a = c y b = d. Teorema: Dados dos conjuntos A y B, existe un único conjunto cuyos elementos son todos los pares ordenados

(a, b) con a ∈ A y b ∈ B.

Definición: Diremos que un conjunto f es una aplicación o función de un conjunto A en un conjunto B (y lo

representaremos por f: A → B) si f ⊂ A × B y para cada a ∈ A existe un único b ∈ B tal que (a, b) ∈ f. Dicho b

recibe el nombre de imagen de a por f y se representa por f(a). También se dice que a es una anti-imagen de b por f.

Diremos que f es inyectiva si cuando x, y ∈ A cumplen f(x) = f(y), entonces x = y (elementos distintos tienen

imágenes distintas).

Diremos que f es suprayectiva si para todo b ∈ B existe un a ∈ A tal que f(a) = b (todo elemento de B tiene al

menos una anti-imagen en A). Diremos que f es biyectiva si es inyectiva y suprayectiva. Ejemplos: Sea A = {0, 1, 2} y B = {0, 1, 2, 3, 4} y sea f = {(0, 3), (1, 0), (2, 3)}. Entonces f es una aplicación f : A → B. Ciertamente es un subconjunto de A × B (sus elementos son pares con primera componente 0, 1 o 2 y segunda componente 0, 1, 2, 3 o 4) y cada elemento de A tiene una única imagen por f en B, a saber, f(0) = 3, f(1) = 0, f(2) = 3. Podemos representar f mediante un diagrama de flechas, así:

Vemos que f no es inyectiva, porque hay dos elementos distintos de A (el 0 y el 2) que tienen la misma imagen en B: se cumple f(0) = f(2), pero 0 <> 2. También vemos f no es suprayectiva, porque hay varios elementos en B que no tienen anti-imagen en A (el 1, el 2 y el 4).

Page 10: Módulo I. Desarrollo de habilidades del pensamiento lógico ...prouniversitarios.org/site/recursos/material-de-apoyo/tecnologias-de... · Módulo I. Desarrollo de habilidades del

La figura siguiente muestra una aplicación inyectiva g : A → B y otra suprayectiva de h : B → A:

Vemos que, en efecto, la aplicación g no asigna una misma imagen a dos elementos distintos, por lo que es inyectiva, pero no suprayectiva, ya que hay elementos sin anti-imagen. En cambio, la de la derecha no es inyectiva, pues h(0) = h(4) y también h(1) = h(2), pero sí que es suprayectiva, ya que todo elemento de B tiene al menos una anti-imagen. La figura siguiente muestra una aplicación biyectiva entre dos conjuntos A y C:

Notemos que éste es el aspecto típico de una aplicación biyectiva entre dos conjuntos: cada elemento de A tiene una única imagen en C y cada elemento de C tiene una única anti-imagen en A (una porque la aplicación es suprayectiva y única porque es inyectiva). De esta suerte, los elementos de A quedan emparejados con los elementos de C sin que falte ni sobre ninguno. En la práctica, para definir una aplicación f : A → B basta especificar (una vez dados A y B) cuál es la imagen f(a)

∈ B de cada elemento a ∈ A.

1.3. Sistemas de ecuaciones Ecuaciones con dos incógnitas.

Definición: Llamamos solución de una ecuación con dos incógnitas a todo par de valores que hacen cierta la igualdad. Cabe destacar que si sólo tenemos una ecuación con dos incógnitas, tendremos infinitas soluciones. Las ecuaciones lineales se representan mediante rectas.

Para obtener las soluciones de dos incógnitas se despeja una de ellas y se le dan valores a la otra. Si representamos las dos ecuaciones que forman un sistema como dos rectas, se puede observar que el punto donde se cortan dichas rectas (si se cortan) es la solución al sistema.

Ejemplo:

72

5

yx

yx

72

5

xy

xy

Tabla de la 1ª Ecuación

Tabla de la 2ª Ecuación

Page 11: Módulo I. Desarrollo de habilidades del pensamiento lógico ...prouniversitarios.org/site/recursos/material-de-apoyo/tecnologias-de... · Módulo I. Desarrollo de habilidades del

Representación gráfica de ambas ecuaciones. Aquí podemos observar. Cómo la solución del sistema es x=4 e y=1

Sistemas de ecuaciones.

Definición: Dos ecuaciones forman un sistema cuando lo que pretendemos de ellas es encontrar su solución común. Cuando dos ecuaciones con dos incógnitas forman un sistema, las ponemos de esta forma:

''' cybxa

cbyax

Se llama solución de un sistema de ecuaciones a la solución común de ambas. Sistemas equivalentes.

Definición: Dos sistemas de ecuaciones se dicen equivalentes cuando tienen la misma solución. Número de soluciones de un sistema lineal.

Sistemas sin solución. Hay sistemas cuyas ecuaciones dicen cosas contradictorias. Por ejemplo:

932

1532

yx

yx

En este caso, nos dice por una parte que 2x+3y=15 y por otra que 2x+3y=9 y eso es absolutamente imposible porque para eso tendrían que adoptar las incógnitas valores distintos en cada ecuación y entonces no sería un sistema de ecuaciones. Así sacamos la conclusión de que el sistema no tiene soluciones comunes y entonces se dice que el sistema es incompatible.

Page 12: Módulo I. Desarrollo de habilidades del pensamiento lógico ...prouniversitarios.org/site/recursos/material-de-apoyo/tecnologias-de... · Módulo I. Desarrollo de habilidades del

Sistemas con infinitas soluciones.

Hay sistemas cuyas ecuaciones dicen lo mismo o que una ecuación es proporcional a la otra, es decir, tenemos dos veces la misma ecuación. Veamos un ejemplo:

1532

1532

yx

yx

(1)

3064

1532

yx

yx

(2) En el ejemplo (1) tenemos que las dos ecuaciones son idénticas y en el ejemplo (2) tenemos que la segunda ecuación es la misma, pero multiplicada por 2, entonces si dividimos toda la ecuación por 2, obtendremos de nuevo que tenemos dos ecuaciones idénticas. En este caso el sistema se llamará compatible determinado, porque tiene soluciones, pero éstas son infinitas. 1.3.1 Solución de ecuaciones lineales, con dos o más incógnitas y de segundo grado. Método de sustitución.

Este método de resolución de un sistema de ecuaciones consiste en despejar una incógnita en una de las ecuaciones y sustituir en la otra. Describamos los pasos que conviene dar para aplicar este método: 1º. Se despeja una incógnita en una de las ecuaciones. 2º. Se sustituye la expresión de esta incógnita en la otra ecuación, obteniendo una ecuación con una sola incógnita. 3º. Se resuelve esta ecuación. 4º. El valor obtenido se sustituye en la ecuación en la que aparecía la incógnita despejada. 5º. Se ha obtenido, así, la solución. Método de igualación.

Éste método consiste en despejar la misma incógnita en ambas ecuaciones e igualar las expresiones resultantes. Describamos los pasos que conviene dar para aplicar este método: 1º. Se despeja la misma incógnita en ambas ecuaciones. 2º. Se igualan las expresiones, lo cual da lugar a una ecuación con una incógnita. 3º. Se resuelve esta ecuación. 4º. El valor obtenido se sustituye en cualquiera de las dos expresiones en las que aparecía despejara la otra incógnita. 5º. Se ha obtenido así la solución. Método de reducción.

Este método consiste en preparar las dos ecuaciones para que una de las incógnitas tenga el mismo coeficiente en ambas. Restando las ecuaciones resultantes, miembro a miembro, se obtiene una ecuación con sólo una incógnita (se ha reducido el número de incógnitas). Resumamos los pasos que debemos dar: 1º. Se preparan las dos ecuaciones (multiplicándolas por los números que convenga). 2º. Al restarlas desaparece una de las incógnitas. 3º. Se resuelve la ecuación resultante. 4º. El valor obtenido se sustituye en una de las iniciales y se resuelve. 5º. Se obtiene, así, la solución. Ejercicio resuelto por el método de reducción:

1525

943

yx

yx

Puesto que el coeficiente de la y en la primera ecuación es doble que en la segunda, multiplicando ésta por 2 se igualarán los coeficientes. Restando, se eliminará esta incógnita.

Page 13: Módulo I. Desarrollo de habilidades del pensamiento lógico ...prouniversitarios.org/site/recursos/material-de-apoyo/tecnologias-de... · Módulo I. Desarrollo de habilidades del

1525

943

yx

yx

Multiplicando por -2:

30410

943

yx

yx

; ahora sumando ambas ecuaciones se

obtiene lo siguiente: -7x = -21; x = 7

21

= 3; Ahora sustituimos x=3 en cualquiera de las expresiones inciales 3x+4y=9 3·3+4y=9 4y=0 y=0. Reglas prácticas para resolver sistemas de ecuaciones lineales. Si una o las dos ecuaciones del sistema tienen un aspecto externo complicado, se empieza por “arreglarlas” hasta llegar a la expresión ax+by=c. Recordemos las ventajas de cada uno de los tres métodos aprendidos:

* El método de sustitución es especialmente útil cuando una de las incógnitas tiene coeficiente 1 ó -1 en alguna de las ecuaciones. * El método de reducción es muy cómodo de aplicar cuando una de las incógnitas tiene el mismo coeficiente en las dos ecuaciones o bien sus coeficientes son uno múltiplo del otro. * Si queremos evitar las operaciones con fracciones, podemos conseguirlo aplicando dos veces el método de reducción para despejar, así, una y otra incógnita. Este consejo es especialmente útil cuando los coeficientes de las incógnitas son números grandes. Ejercicios propuestos

Resuelve los siguientes sistemas de ecuaciones. a) x+y=2; 2x+3y=5. b) x+y=1; 3x+2y=3 c) 2x+y=5; x+3y=5 d) 2x-y=3; 4x+3y=1 e) x+y=1; 3x-4y=7 f) 5x-y=7; 2x+3y=-4 g) 3x-2y=3; x-3y=-6 h) 5x-y=9; x-y=1 i) 2x-3y=2; x-2y=0 Resuelve los siguientes problemas.

1. La Cifra de las decenas de un número de dos cifras es el doble de la cifra de las unidades, y si a dicho número le restamos 27 se obtiene el número que resulta de invertir el orden de sus cifras. ¿Cuál es dicho número? 2. La edad de María es doble que la edad de Julia. Hace diez años la suma de las edades de las dos era igual a la edad actual de María. ¿Cuál son las edades actuales de María y Julia? 3. Por 560 pesetas se han comprado 6 kg de azúcar de la clase A y dos kg de azúcar de la clase B. Se mezcla 1 kg de azúcar de cada clase y se obtiene una mezcla que vale 75 ptas. El kg. ¿Cúanto vale el kg de azúcar de la clase A?¿Y el de la clase B? 4. Un comerciante compra un pañuelo y una bufanda por 2000 ptas y los vende por 2260 ptas. ¿Cuánto le costó cada objeto, sabiendo que en la venta del pañuelo ganó el 10 por 100 y en la venta de la bufanda ganó el 15 por 100? 5. En un colegio, entre chicos y chicas, hay 300 alumnos. Del total asisten a una excursión 155 alumnos. Se sabe que a la excursión han ido el 60 por 100 de los chicos y el 40 por 100 de las chicas. ¿Cuántos chicos y cuántas chicas hay en el colegio? 6. ¿Cuál es el área de un rectángulo sabiendo que su perímetro mide 16 cm y que su base es el triple de su altura? 7. En un corral hay conejos y gallinas. En total hay 58 cabezas y 168 patas. ¿Cuántos conejos y cuantas gallinas hay en el corral? 8. La edad de un padre es doble que la de su hijo. Hace diez años la edad del padre era triple que la del hijo. ¿Cuáles son las edades actuales del padre y del hijo? 9. La suma de dos números es 12 y su cociente es 3. Halla estos números. 10. Un padre desea repartir entre sus hijos una cantidad de 10.000 pesetas. Al hijo mayor le quiere dar 2000 pesetas más que al pequeño. ¿Cuánto corresponderá a cada hijo?

Page 14: Módulo I. Desarrollo de habilidades del pensamiento lógico ...prouniversitarios.org/site/recursos/material-de-apoyo/tecnologias-de... · Módulo I. Desarrollo de habilidades del

1.4. Matrices.

Las matrices, son arreglos de números. Las matrices y su álgebra respectiva tienen una aplicación potencial siempre que una información numérica se pueda acomodar de manera significativa en bloques rectangulares. Un área de aplicación del álgebra matricial son las gráficas por computadora. En un sistema de coordenadas, un objeto puede representarse por medio de una matriz que contenga las coordenadas de cada vértice o esquina. Por ejemplo, podríamos configurar un esquema de conexión por puntos en el que el rayo que se muestra esté representado por la matriz de la derecha.

Con frecuencia las gráficas por computadora muestran objetos que giran en el espacio. En una computadora, la rotación se realiza por medio de una multiplicación de matrices. El rayo se gira 52 grados en contra del sentido de las manecillas del reloj alrededor del origen, esto por medio de la multiplicación de matrices, que incluye una matriz cuyas entradas son funciones trigonométricas del ángulo de rotación:

La búsqueda de formas para describir situaciones, condujo al estudio de arreglos rectangulares de números. Por ejemplo, considere el sistema de ecuaciones lineales.

Page 15: Módulo I. Desarrollo de habilidades del pensamiento lógico ...prouniversitarios.org/site/recursos/material-de-apoyo/tecnologias-de... · Módulo I. Desarrollo de habilidades del

Lo que caracteriza a este sistema son los coeficientes numéricos en las ecuaciones, junto con sus posiciones relativas. Por esta razón, el sistema puede describirse por el arreglo rectangular:

que es llamado matriz (plural: matrices). Consideraremos a tales arreglos rectangulares como objetos por sí mismos; se acostumbra encerrarlos entre corchetes, y también es común que se utilicen paréntesis. En la representación simbólica de matrices usaremos letras mayúsculas en negritas como A, B, C, etcétera. Definición:

Un arreglo rectangular de números que consiste en m renglones y n columnas, se conoce como matriz de m*n o matriz de orden m*n. Para la entrada aij, llamamos a i el subíndice del renglón y a j el subíndice de la columna.

El número de entradas en una matriz de m X n es mn. Por brevedad, una matriz de m X n puede denotarse por el símbolo [aij] m X n o de manera más sencilla [aij], donde el orden se entiende que es el apropiado para el contexto dado. Esta notación sólo indica qué tipos de símbolos se utilizan para denotar la entrada general. Una matriz que tiene exactamente un renglón, se llama matriz renglón o vector renglón. Una matriz que consiste en una sola columna se llama matriz columna o vector columna. Igualdad de matrices

Las matrices y son iguales si y sólo si tienen el mismo orden y aij = bij para cada i y cada j (esto es, entradas correspondientes son iguales). Transpuesta de una matriz

Si A es una matriz, la matriz que se forma a partir de A por intercambio de sus renglones con sus columnas se conoce como la transpuesta de A. Definición

La transpuesta de una matriz A de m x n, denotada AT, es la matriz de n x m cuyo i-ésimo renglón es la i-ésima columna de A. Matrices especiales Cierto tipo de matrices desempeñan funciones importantes en la teoría de matrices. Una matriz de mxn cuyas entradas son todas iguales a cero, se conoce como matriz cero de mxn y se denota por 0, de manera más sencilla, por O si se sobreentiende su tamaño.

Page 16: Módulo I. Desarrollo de habilidades del pensamiento lógico ...prouniversitarios.org/site/recursos/material-de-apoyo/tecnologias-de... · Módulo I. Desarrollo de habilidades del

Una matriz que tiene el mismo número de columnas que de renglones, por ejemplo n renglones y n columnas, es llamada matriz cuadrada de orden n. Esto es, una matriz m X n es cuadrada si y sólo si m=n. Una matriz cuadrada A es llamada matriz diagonal si todas las entradas que se encuentran fuera de la diagonal principal son cero; esto es, si aij=0 para 𝑖 ≠ 𝑗 Ejemplos de matrices diagonales son:

1.4.1 Operaciones con matrices. Suma de matrices.

Si 𝐴 = [𝑎𝑖𝑗] 𝑦 𝐵 [𝑏𝑖𝑗] son matrices de m x n, entonces la suma A+B es la matriz de m x n que se obtiene sumando

las correspondientes entradas de A y B; esto es, 𝐴 + 𝐵 = [𝑎𝑖𝑗 + 𝑏𝑖𝑗].

Multiplicación por un escalar.

Si A es una matriz m x n y k es un número real (también llamado escalar), entonces con kA denotamos a la matriz m x n obtenida al multiplicar cada entrada de A por k. La operación se llama multiplicación por un escalar, y kA se llama múltiplo escalar de A.

Page 17: Módulo I. Desarrollo de habilidades del pensamiento lógico ...prouniversitarios.org/site/recursos/material-de-apoyo/tecnologias-de... · Módulo I. Desarrollo de habilidades del

Resta de matrices

Si A y B tienen el mismo tamaño, entonces por A - B queremos decir A + (-B). Ejemplo:

Multiplicación de matrices.

Sea A una matriz de m x n y B una matriz n x p. Entonces el producto AB es la matriz C de m x p cuya entrada Cij en el renglón i y la columna j, se obtiene como sigue: sume los productos formados al multiplicar, en orden, cada entrada (esto es, primera, segunda, etc.) del renglón i de A por la “correspondiente” entrada (esto es, primera, segunda, etc.) de la columna j de B. Consideraciones:

Page 18: Módulo I. Desarrollo de habilidades del pensamiento lógico ...prouniversitarios.org/site/recursos/material-de-apoyo/tecnologias-de... · Módulo I. Desarrollo de habilidades del

Ejemplo:

1.4.2 Matrices y sistemas de ecuaciones lineales.

Ilustraremos un método por el cual las matrices pueden utilizarse para resolver un sistema de ecuaciones lineales.

Primero necesitamos definir algunos términos. Recuerde, que la matriz:

es la matriz de coeficientes de este sistema. Las entradas en la primera columna corresponden a los coeficientes de las “x” en las ecuaciones. Por ejemplo, la entrada en el primer renglón y la primera columna corresponde al coeficiente de “x” en la primera ecuación, y la entrada en el segundo renglón y la primera columna corresponde al coeficiente de “x” en la segunda ecuación. En forma análoga, las entradas en la segunda columna corresponden a los coeficientes de las “y”. Otra matriz asociada con este sistema es la llamada matriz aumentada, que está dada por:

Page 19: Módulo I. Desarrollo de habilidades del pensamiento lógico ...prouniversitarios.org/site/recursos/material-de-apoyo/tecnologias-de... · Módulo I. Desarrollo de habilidades del

Operaciones elementales:

Ahora estamos preparados para describir un procedimiento matricial para resolver un sistema de ecuaciones lineales. Primero, formamos la matriz aumentada del sistema; después, por medio de operaciones elementales sobre renglones, determinamos una matriz equivalente que indique claramente la solución. Seremos más específicos en lo que queremos decir por una matriz que indique claramente la solución. Ésta es una matriz, llamada matriz reducida. En otras palabras, para resolver el sistema debemos encontrar la matriz reducida tal que la matriz aumentada del sistema sea equivalente a ella.

Page 20: Módulo I. Desarrollo de habilidades del pensamiento lógico ...prouniversitarios.org/site/recursos/material-de-apoyo/tecnologias-de... · Módulo I. Desarrollo de habilidades del

Ejemplo: Encontrar la solución del sistema de ecuaciones:

Page 21: Módulo I. Desarrollo de habilidades del pensamiento lógico ...prouniversitarios.org/site/recursos/material-de-apoyo/tecnologias-de... · Módulo I. Desarrollo de habilidades del

1.5 Estadística descriptiva Definición de Estadística

La Estadística se ocupa de los métodos y procedimientos para recoger, clasificar, resumir, hallar regularidades y analizar los datos, siempre y cuando la variabilidad e incertidumbre sea una causa intrínseca de los mismos; así como de realizar inferencias a partir de ellos, con la finalidad de ayudar a la toma de decisiones y en su caso formular predicciones. Cuando coloquialmente se habla de estadística, se suele pensar en una relación de datos numéricos presentada de forma ordenada y sistemática. Esta idea es la consecuencia del concepto popular que existe sobre el término y que cada vez está más extendido debido a la influencia de nuestro entorno, ya que hoy día es casi imposible que cualquier medio de difusión, periódico, radio, televisión……., no nos aborde diariamente con cualquier tipo de información estadística sobre accidentes de tráfico, índices de crecimiento de población, turismo, tendencias políticas, etc. Sólo cuando nos adentramos en un mundo más específico empezamos a percibir que la Estadística no sólo es algo más, sino que se convierte en la única herramienta que, hoy por hoy, permite dar luz y obtener resultados, y por tanto beneficios, en cualquier tipo de estudio, cuyos movimientos y relaciones, por su variabilidad intrínseca, no puedan ser abordadas desde la perspectiva de las leyes deterministas. Podríamos, desde un punto de vista más amplio, definir la estadística como la ciencia que estudia cómo debe emplearse la información y cómo dar una guía de acción en situaciones prácticas que entrañan incertidumbre. Clasificación de la Estadística

Podríamos por tanto clasificar la Estadística en descriptiva, cuando los resultados del análisis no pretenden ir más allá del conjunto de datos, y estadística inferencial cuando el objetivo del estudio es derivar las conclusiones obtenidas a un conjunto de datos más amplio. Estadística descriptiva

Describe, analiza y representa un grupo de datos utilizando métodos numéricos y gráficos que resumen y presentan la información contenida en ellos. Para esto se utilizan las tablas y gráficos de frecuencias absolutas y relativas, y los estimadores de las medidas de tendencia central, dispersión, sesgo y kurtosis. Tablas de frecuencia, es una tabla resumen en la que se disponen los datos divididos en grupos ordenados numéricamente, denominados clases o categorías. El número de datos u observaciones que pertenecen a determinada clases de llama frecuencia de clase, el punto medio de cada clase o categoría se llama marca de clase y la longitud de una clase se conoce como intervalo de clase. La frecuencia absoluta es el número o cantidad de observaciones iguales o semejantes que se encuentran comprendidas dentro de un determinado intervalo de clase: mientras la frecuencia relativa es el cociente que resulta de dividir la frecuencia absoluta de una clase para la suma total de frecuencias de todas las clases de una tabla de frecuencias. Representación Gráfica.- La representación gráfica de una distribución de frecuencias depende del tipo de datos que la constituya. Representación Gráfica:

Diagrama de sectores: Está representación gráfica consiste en dividir un círculo en tantos sectores circulares como modalidades presente el carácter cualitativo, asignando un ángulo central a cada sector circular proporcional a la frecuencia absoluta ni, consiguiendo de esta manera un sector con área proporcional también a ni. Histograma: Al ser esta representación una representación por áreas, hay que distinguir si los intervalos en los que aparecen agrupados los datos son de igual amplitud o no. Medidas descriptivas

Los fenómenos biológicos no suelen ser constantes, por lo que será necesario que junto a una medida que indique el valor alrededor del cual se agrupan los datos, se asocie una medida que haga referencia a la variabilidad que refleje dicha fluctuación. Estudiaremos los estadísticos que nos van a orientar sobre cada uno de estos niveles de información: valores alrededor de los cuales se agrupa la muestra, la mayor o menor fluctuación alrededor de esos valores, nos interesaremos en ciertos valores que marcan posiciones características de una distribución de frecuencias así como su simetría y su forma. (Ver figura)

Page 22: Módulo I. Desarrollo de habilidades del pensamiento lógico ...prouniversitarios.org/site/recursos/material-de-apoyo/tecnologias-de... · Módulo I. Desarrollo de habilidades del

Figura. Medidas representativas de un conjunto de datos estadísticos

En este sentido pueden examinarse varias características, siendo las más comunes:

La tendencia central de los datos;

La dispersión o variación con respecto a este centro;

Los datos que ocupan ciertas posiciones.

La simetría de los datos. La forma en la que los datos se agrupan. 1.5.1. Cálculo de medidas de tendencia central y medidas de dispersión

Estadísticos de tendencia central: las tres medidas más usuales de tendencia central son la media, mediana y moda.

La Media. También llamada media aritmética, es una medida descriptiva que se calcula sumando los valores numéricos y dividiendo entre el número de valores. A la media poblacional se la conoce como μ (mu) y la media

muestral como x (x barra). Cálculo de la media poblacional μ:

x

N

Donde N es el tamaño de la población y x son los valores de los datos de la población.

Cálculo de la media muestral x :

xx

n

Donde n es el tamaño de la muestra y x son todos los valores que toma la muestra. La Mediana es el valor central de la variable, es decir, supuesta la muestra ordenada en orden creciente o decreciente, el valor que divide en dos partes la muestra. La principal característica de esta medida es que al menos el 50% de las observaciones son menores o iguales a ella.

Calculo de la mediana: cuando N es impar, hay un término central

1

2

Nx

que será el valor de la mediana.

Cuando N es par, hay dos términos centrales la mediana será el promedio de estos dos valores. La moda es el valor de la variable que tenga mayor frecuencia absoluta, la que más se repite, es la única medida de centralización que tiene sentido estudiar en una variable cualitativa, pues no precisa la realización de ningún cálculo

Page 23: Módulo I. Desarrollo de habilidades del pensamiento lógico ...prouniversitarios.org/site/recursos/material-de-apoyo/tecnologias-de... · Módulo I. Desarrollo de habilidades del

Medidas de variabilidad o dispersión

Los estadísticos de tendencia central o posición nos indican donde se sitúa un grupo de puntuaciones. Los de variabilidad o dispersión nos indican si esas puntuaciones o valores están próximas entre sí o si por el contrario están o muy dispersas. Algunas de las principales medidas son: Rango. Se obtiene restando el valor más bajo de un conjunto de observaciones del valor más alto, se denota como R. Es fácil de calcular y sus unidades son las mismas que las de la variable, aunque posee varios inconvenientes: No utiliza todas las observaciones (sólo dos de ellas); Se puede ver muy afectada por alguna observación extrema; El rango aumenta con el número de observaciones, o bien se queda igual. En cualquier caso nunca disminuye. Varianza. Es una medida de dispersión que mide la tendencia de las observaciones individuales a desviarse con respecto a la media. La varianza para los datos de una población esta determinada por la siguiente ecuación:

2

2( )x

N

Donde x son los valores de la población, μ es la media poblacional y N es el número de observaciones en la población. Desviación Estándar también mide la variabilidad de las observaciones con respecto a la media, es igual a la raíz

cuadrada de la varianza. Esta medida de dispersión siempre es positiva y se denota por . Se calcula a través de la ecuación:

2( )x

N

Medidas de posición. Documento1Las medidas de posición o localización dividen la distribución en partes iguales, sirven para clasificar a un individuo o elemento dentro de una determinada población o muestra. Éstas son: Cuartiles: divide a la población o muestra en cuatro partes iguales. Deciles: divide a la población en diez partes iguales. Percentiles: divide a la población en cien partes iguales. Simetría de los datos. Sabemos cómo calcular valores alrededor de los cuales se distribuyen las observaciones de una variable sobre una muestra y sabemos cómo calcular la dispersión que ofrecen los mismos con respecto al valor de central. Nos proponemos dar un paso más allá en el análisis de la variable. En primer lugar, nos vamos a plantear el saber si los datos se distribuyen de forma simétrica con respecto a un valor central, o si bien la gráfica que representa la distribución de frecuencias es de una forma diferente del lado derecho que del lado izquierdo. Medida de apuntamiento, Curtosis: La curtosis es una medida del apuntamiento, que nos indicará si la distribución es muy apuntada o poco apuntada. Este coeficiente lo vamos a denotar por K y se calcula según la siguiente expresión:

Page 24: Módulo I. Desarrollo de habilidades del pensamiento lógico ...prouniversitarios.org/site/recursos/material-de-apoyo/tecnologias-de... · Módulo I. Desarrollo de habilidades del

1.5.2 Distribuciones de frecuencia e histograma.

Una ordenación de datos es una de las formas más sencillas de presentarlos: organiza los valores en orden ascendente o descendente. La ordenación de datos ofrece varias ventajas con respecto a los datos sin procesar: Podemos identificar los valores mayor y menor rápidamente Es fácil dividir los datos en secciones. Podemos ver si algunos valores aparecen más de una vez en el arreglo Podemos observar la distancia entre valores sucesivos de los datos A pesar de las ventajas, en algunas ocasiones un ordenamiento de datos no resulta útil. Como da una lista de todos los valores, es una forma incómoda de mostrar grandes cantidades de datos. Suele ser necesario comprimir la información sin que pierda su utilidad para la interpretación y la toma de decisiones. ¿Cómo podemos hacerlo? Distribuciones de frecuencia

Una manera de compactar datos es mediante una tabla de frecuencias o distribución de frecuencias. Para entender la diferencia entre ésta y el ordenamiento de datos Construcción de una distribución de frecuencias

Decida el tipo y número de clases para dividir los datos. El número de clases depende del número de datos puntuales y del alcance de los datos recolectados. Cuantos más datos puntuales se tengan o más grande sea el rango, más clases se necesitarán para dividir los datos. Desde luego, si solamente tenemos 10 datos puntuales, no tendría sentido plantear 10 clases. Como regla general, los estadísticos rara vez utilizan menos de seis y más de 15 clases. Debido a que necesitamos hacer los intervalos de clase de igual tamaño, el número de clases determina el ancho de cada clase. Para hallar el ancho de los intervalos podemos utilizar esta ecuación:

Clasifique los datos puntuales en clases y cuente el número de observaciones que hay en cada una. En consecuencia, nuestras clases son completamente incluyentes y mutuamente excluyentes. Observe que el límite inferior de la primera clase corresponde al dato puntual menor de la muestra, y que el límite superior de la última clase corresponde al de dato puntual mayor. Ilustre los datos en un diagrama Estos tres pasos nos permiten organizar los datos en forma tanto tabular como gráfica Tomemos como ejemplo las existencias promedio (en días) para 20 tiendas de autoservicio:

Page 25: Módulo I. Desarrollo de habilidades del pensamiento lógico ...prouniversitarios.org/site/recursos/material-de-apoyo/tecnologias-de... · Módulo I. Desarrollo de habilidades del

Calculando el ancho de clase:

Clasificación y conteo de los datos.

Representación gráfica:

Observe, que las frecuencias de las clases con ancho de 0.3 yardas siguen una secuencia regular: el número de datos puntuales empieza con dos para la primera clase, aumenta hasta cinco en la segunda, alcanza 11 en la tercera clase, disminuye a seis y luego cae a tres en la quinta y sexta clases. Tendremos que, cuanto más ancho sea el intervalo de clase, más suave será la progresión. Sin embargo, si las clases son demasiado anchas, podemos perder mucha información, al grado de que la gráfica carezca de significado.

Page 26: Módulo I. Desarrollo de habilidades del pensamiento lógico ...prouniversitarios.org/site/recursos/material-de-apoyo/tecnologias-de... · Módulo I. Desarrollo de habilidades del

1.6 Teoría de juegos

Introducción a la teoría de juegos En el análisis de decisiones un sólo tomador de decisiones busca seleccionar una alternativa de decisión óptima después de considerar los resultados posibles de uno o más eventos fortuitos. En la teoría de juegos, dos o más tomadores de decisiones, llamados jugadores, compiten como adversarios entre sí. Cada jugador selecciona una estrategia de forma independiente, sin conocer de antemano la estrategia del otro jugador o jugadores. La combinación de estrategias de los competidores determina el valor del juego para los jugadores. La teoría de juegos se ha desarrollado para su aplicación en situaciones en que los jugadores que compiten son equipos, empresas, candidatos políticos, ejércitos y licitadores de contratos. Descripción de juegos de suma cero para dos personas. Dos personas significa que en el juego participan dos jugadores que compiten. Suma cero significa que la ganancia (o pérdida) de un jugador es igual a la pérdida (o ganancia) correspondiente del otro jugador. Como resultado, la ganancia y la pérdida se equilibran de tal manera que el juego da como resultado la suma de cero. Lo que un jugador gana, el otro lo pierde. Mostremos un juego de dos personas con suma cero y su solución al considerar a dos empresas que compiten por su participación de mercado. Competencia por la participación de mercado

Suponga que dos empresas son los únicos fabricantes de un producto en particular y compiten entre ellas por participación de mercado. En la planeación de una estrategia de mercado para el próximo año, cada empresa considera tres estrategias diseñadas para ganar la participación de mercado de su competidor. Las tres estrategias, suponiendo que son las mismas para ambas empresas, son las siguientes: Estrategia 1. Incrementar la publicidad Estrategia 2. Proporcionar descuentos por cantidad Estrategia 3. Extender la garantía del producto A continuación se presenta una tabla de resultados que muestra la ganancia en porcentaje de la participación de mercado esperada para la empresa A para cada combinación de estrategias. Las notaciones a1, a2 y a3 identifican las tres estrategias de la empresa A; las notaciones b1, b2 y b3 denotan las tres estrategias de la empresa B. Es un juego de suma cero debido a que cualquier ganancia en la participación de mercado para la empresa A es una pérdida de participación de mercado para la empresa B.

Al interpretar las entradas de la tabla vemos que si la empresa A aumenta la publicidad (a1) y la empresa B aumenta la publicidad (b1), la empresa A lleva ventaja debido a que tiene un incremento en la participación de mercado de 4%. Por otra parte, si la empresa A proporciona descuentos por cantidad (a2) y la empresa B aumenta la publicidad (b1), se proyecta que la empresa A perderá una participación de mercado de 1%, misma que ganará la empresa B. La empresa A busca valores de resultados que muestren aumentos relativamente grandes en su participación de mercado. La empresa B, en cambio, busca valores de resultados que muestren disminuciones o pequeños incrementos en la participación de mercado de la empresa A y que por ende sean mejores resultados para ella. Este juego que involucra la participación en el mercado cumple con los requisitos de un juego de dos personas con suma cero. Las dos empresas son los dos jugadores y la suma cero ocurre debido a que lo que la empresa A gana en participación de mercado es igual a lo que la empresa B pierde en participación de mercado. Debido al horizonte de planeación, cada empresa debe seleccionar una estrategia antes de conocer la estrategia de la otra empresa. ¿Cuáles son las estrategias óptimas para las dos empresas? La lógica de la teoría de juegos supone que cada empresa o jugador tiene la misma información y selecciona una estrategia que proporciona el mejor resultado posible desde su punto de vista. Suponga que la empresa A

Page 27: Módulo I. Desarrollo de habilidades del pensamiento lógico ...prouniversitarios.org/site/recursos/material-de-apoyo/tecnologias-de... · Módulo I. Desarrollo de habilidades del

selecciona la estrategia a1. Es posible un incremento en la participación de mercado de 4%, 3% o 2% dependiendo de la estrategia que siga la empresa B. Si la empresa B cree que la empresa A utilizará la estrategia a1, entonces empleará la estrategia b3. Bajo el supuesto de que la empresa B seleccionará la mejor estrategia para ella, la empresa A analiza el juego y se protege frente a las acciones de la empresa B. Al hacerlo, la empresa A identifica el resultado mínimo posible para cada una de sus acciones. Este resultado es el valor mínimo en cada fila de la matriz de resultados. Estos mínimos de fi la se calculan en la tabla de resultados como sigue:

Al considerar las entradas de la columna Mínimo, vemos que se puede garantizar a la empresa A un incremento en la participación de mercado de por lo menos 2% al seleccionar la estrategia que proporciona el máximo de los mínimos de fila (estrategia a1). Por tanto, la empresa A sigue un procedimiento maximin y selecciona la estrategia a1 como su mejor estrategia. Veamos ahora la tabla de resultados desde el punto de vista del otro jugador, la empresa B. Las entradas de la tabla de resultados representan pérdidas en la participación de mercado. Considere lo que ocurre a la empresa B si selecciona la estrategia b1. Las disminuciones en la participación de mercado de 4%, -1% y 5% son posibles. Bajo el supuesto de que la empresa A seleccionará la estrategia que es mejor para ella, la empresa B sabe que si selecciona la estrategia b1 podría incurrir en una pérdida en la participación de mercado de 5%. Por tanto, la empresa B analiza el juego considerando el valor máximo de cada columna, el cual proporciona la disminución máxima en su participación de mercado para cada estrategia de la empresa A. Estos máximos de columna se calculan como sigue:

Al considerar las entradas de la fila Máximo, se puede garantizar a la empresa B una disminución en la participación de mercado de no más de 2% al seleccionar la estrategia que proporciona el mínimo de los máximos de columna (estrategia b3). Por tanto, la empresa B sigue un procedimiento minimax y selecciona la estrategia b3 como su mejor estrategia. Bajo la estrategia b3 la empresa B sabe que la empresa A no puede obtener más de 2% de participación de mercado.

Page 28: Módulo I. Desarrollo de habilidades del pensamiento lógico ...prouniversitarios.org/site/recursos/material-de-apoyo/tecnologias-de... · Módulo I. Desarrollo de habilidades del

Identificación de una estrategia pura

Siempre que el máximo de los mínimos de fila sea igual que el mínimo de los máximos de columna, los jugadores no pueden mejorar sus resultados al cambiar las estrategias. Se dice que el juego está en un punto de equilibrio. En el punto de equilibrio, las estrategias óptimas y el valor del juego no pueden mejorarse cuando cambian las estrategias de cualquier jugador. Por tanto, una estrategia pura se define como la estrategia óptima para ambos jugadores. El requisito para una estrategia pura es el siguiente: Máximo(mínimos de fi la) = Mínimo(máximos de columna) Es decir, el valor maximin para el jugador A es igual al valor minimax para el jugador B. En este ejemplo, la solución del juego es que la empresa A aumente su publicidad (estrategia a1) y la empresa B extienda la garantía de su producto (estrategia b3). El valor del juego muestra que la solución óptima aumentará 2% la participación de mercado de la empresa A y disminuirá 2% la participación de mercado de la empresa B. Con una estrategia pura, ningún jugador puede mejorar su posición al cambiar a una estrategia diferente. En nuestro ejemplo de marketing, la estrategia pura para la empresa A es a1. Cuando la empresa B selecciona su estrategia pura b3, el valor del juego muestra un incremento en la participación de mercado de la empresa A de 2%. Observe que si la empresa B trata de cambiar a su estrategia pura b3, la participación de mercado de la empresa A aumentará 4% si se selecciona b1 o aumentará 3% si se selecciona b2. La empresa B debe permanecer con su estrategia pura b3 para obtener el mejor resultado. De modo parecido, note que si la empresa A trata de cambiar su estrategia pura a1, la participación de mercado de la empresa A aumentará sólo 1% si se selecciona a2 o no aumentará en lo absoluto si se selecciona a3. La empresa A debe permanecer con su estrategia pura a1 para mantener su incremento de 2% en su participación de mercado. Por tanto, incluso si uno de los jugadores descubre por adelantado la estrategia de su oponente, no podría obtener ventajas al cambiar a una estrategia diferente. Cuando una estrategia pura es óptima para un juego de dos personas con suma cero, se realizan los pasos siguientes para encontrar la estrategia óptima para cada jugador: Paso 1. Calcular el resultado mínimo para cada fila (jugador A). Paso 2. Para el jugador A, seleccionar la estrategia que proporciona el máximo de los mínimos de fila. Paso 3. Calcular el resultado máximo para cada columna (jugador B). Paso 4. Para el jugador B, seleccionar la estrategia que proporciona el mínimo de los máximos de columna. Paso 5. Si el valor maximin (paso 2) es igual al valor minimax (paso 4), existe una estrategia pura óptima para ambos jugadores. La estrategia óptima para el jugador A se identifica en el paso 2 y la estrategia óptima para el jugador B se identifica en el paso 4. El valor del juego está dado por el valor del punto de equilibrio en el que las estrategias óptimas para ambos jugadores se interceptan. Si en el paso 5 el valor maximin para el jugador A no es igual al valor minimax para el jugador B, una estrategia pura no es óptima para el juego de dos personas con suma cero. En este caso se recomienda una estrategia mixta. Juegos de estrategia mixta

Considere el juego de dos competidores y suma cero que ocurre en un partido de futbol americano. Los dos jugadores competidores son los dos equipos de futbol. En cada partido, el juego es suma cero porque las yardas ganadas por un equipo son iguales a las yardas perdidas por el otro. Como suele ocurrir en la teoría de juegos, cada equipo debe seleccionar su estrategia antes de conocer la estrategia que selecciona el otro equipo. En este ejemplo, el equipo A está a la ofensiva que trata de ganar yardas, y el equipo B es el que está a la defensiva que trata de mantener en un mínimo las yardas ganadas por el equipo A. Las estrategias de ofensiva para el equipo A se definen como sigue: a1 = avance por carrera a2 = avance por pase Las estrategias defensivas para el equipo B son las siguientes: b1 = defensa frente a carrera b2 = defensa frente a pase La tabla de resultados muestra las yardas que avanza el equipo A, dependiendo de las estrategias seleccionadas por los dos equipos.

Page 29: Módulo I. Desarrollo de habilidades del pensamiento lógico ...prouniversitarios.org/site/recursos/material-de-apoyo/tecnologias-de... · Módulo I. Desarrollo de habilidades del

Al aplicar el procedimiento de cinco pasos utilizado para identificar una estrategia pura, los mínimos de fila y los máximos de columna son los siguientes:

El máximo de los mínimos de fila es 1 y el mínimo de los máximos de columna es 6. Como los valores no son iguales, el juego de dos personas con suma cero no tiene una estrategia pura óptima. En este caso se recomienda una solución de estrategia mixta. Con una estrategia mixta la solución óptima para cada jugador es seleccionar al azar entre las estrategias de alternativas. En el ejemplo del futbol americano, por tanto, el equipo A a la ofensiva confundirá o variará su selección de jugadas de ataque por carrera (a1) y pase (a2), mientras que el equipo B a la defensiva confundirá o variará su selección de jugadas frente a carrera (b1) y frente a pase (b2). Cuando usted piensa en un partido de futbol americano, queda claro que una estrategia pura como que el equipo A siempre seleccione un avance por carrera no funcionará. El equipo B reconocería la estrategia pura del equipo A y siempre estaría preparado con una defensa frente a la carrera. Por tanto, una estrategia mixta del equipo A de a veces correr y a veces enviar pases tendría sentido. Cuando se necesita una solución de estrategia mixta, la teoría de juegos determina las probabilidades óptimas de cada estrategia para cada jugador. Es decir, la solución de la teoría de juegos para el ejemplo del futbol americano indicará al equipo ofensivo las probabilidades óptimas para un avance por carrera y un avance por pase. Al mismo tiempo, la solución dirá al equipo defensivo las probabilidades óptimas para una defensa frente a carrera y una defensa frente a pase. La exposición siguiente muestra cómo calcular estas probabilidades de estrategia mixta. Sea

p = la probabilidad de que el equipo A seleccione una jugada de carrera (1 - p) = la probabilidad de que el equipo A seleccione una jugada de pase Cuando existe una solución de estrategia mixta, buscamos determinar la probabilidad p para el equipo A tal que el equipo B no pueda mejorar su resultado al cambiar su estrategia defensiva. Primero asuma que el equipo B selecciona una defensa frente a carrera como muestra la columna b1. Si el equipo A selecciona avanzar por carrera con probabilidad p y avanzar con pase con probabilidad (1 - p), el valor esperado de las yardas ganadas para el equipo A se calcula como sigue: Si el equipo B selecciona a1: VE(yardas) = 1p = 15(1 - p) Si el equipo B selecciona su defensa frente a carrera como muestra la columna b2, el valor esperado de las yardas ganadas por el equipo A será el siguiente: Si el equipo B selecciona b2: VE(yardas) = 6p = 0(1 - p) + 6p

Page 30: Módulo I. Desarrollo de habilidades del pensamiento lógico ...prouniversitarios.org/site/recursos/material-de-apoyo/tecnologias-de... · Módulo I. Desarrollo de habilidades del

Para garantizar que el equipo B no cambie su estrategia y disminuya el valor esperado de las yardas ganadas por el equipo A, se establece la igualdad de los dos valores esperados y se calcula el valor de p.

Con p = 0.75, (1 - p) = 1 - 0.75 = 0.25. Este resultado indica al equipo A que debe seleccionar una jugada de carrera con una probabilidad de 0.75 y una jugada de pase con una probabilidad de 0.25. El valor esperado de las yardas ganadas, que es el valor del juego, es

Ahora considere las probabilidades óptimas para el equipo B. Sea q = la probabilidad de que el equipo B seleccione una defensa frente a carrera (1 - q) = la probabilidad de que el equipo B seleccione una defensa frente a pase Con la misma lógica que empleamos para calcular las probabilidades óptimas del equipo A, queremos determinar el valor de q tal que el equipo A no pueda aumentar el valor esperado de las yardas ganadas al cambiar su estrategia ofensiva. Primero calculamos el valor esperado de las yardas para el equipo B para los dos casos siguientes: Si el equipo A selecciona a1: E(yardas) = 1q + 6(1 - q) Si el equipo A selecciona a2: VE(yardas) = 15q + 0(1 - q) = 15q Para garantizar que el equipo A no cambie su estrategia y afecte el valor esperado de las yardas para el equipo B, se establece la igualdad de los dos valores y se calcula el valor de q como sigue:

Con q = 0.30, (1 - q) = 1 - 0.30 = 0.70. Este resultado indica al equipo B que debe seleccionar una defensa frente a carrera con una probabilidad de 0.30 y una defensa frente a pase con una probabilidad de 0.70. Las yardas esperadas ganadas, que es el valor del juego, seguirán siendo 4.5 yardas por jugada. Por tanto, tenemos una solución de estrategia mixta para el ejemplo del partido de futbol americano. Cualquier juego de estrategia mixta de 2 <> 2, de dos personas con suma cero puede resolverse algebraicamente como muestra este ejemplo. Si un juego de dos personas con suma cero más grande involucra una estrategia mixta, resolverlo es un poco más complicado.

Page 31: Módulo I. Desarrollo de habilidades del pensamiento lógico ...prouniversitarios.org/site/recursos/material-de-apoyo/tecnologias-de... · Módulo I. Desarrollo de habilidades del

Bibliografía

ANDRADAS Carlos. Artículo “Mesa redonda sobre la enseñanza de las Matemáticas _ algunas reflexiones_”. 2000. GÓMEZ, P., KILPATRICK. J., RICO, L. (1995), Educación Matemática. Bogotá, Colombia: Iberoamericana. POPPER, K. (1979), El desarrollo del conocimiento científico, México D.F.: Siglo XXI. Handbook of Research on Mathematics Teaching and Learning. (1992). New York: Mac Millan. LAKATOS, I. (1978), Pruebas y refutaciones. La lógica del descubrimiento Matemático. Madrid: Alianza Universidad. FERRERO, L. Matemáticas 5. Serie Sol y Luna. Madrid: Anaya. 1999. FILLOY, E.; ROJANO, T.; PUIG, L. Educational algebra: A theoretical and empirical approach. Berlin: Springer. 2008. GODINO, J. D. Un enfoque ontológico y semiótico de la cognición matemática. Recherches en Didactiques des Mathematiques, Grenoble, 2002. GODINO, J. D.; BATANERO, C. Significado institucional y personal de los objetos matemáticos. Recherche en Didactique des Mathématiques, Grenoble, 1994.

Page 32: Módulo I. Desarrollo de habilidades del pensamiento lógico ...prouniversitarios.org/site/recursos/material-de-apoyo/tecnologias-de... · Módulo I. Desarrollo de habilidades del

Módulo II. Estadística y matemáticas Econometría y modelos

¿Qué es la econometría? En términos literales econometría significa “medición económica”. Sin embargo, si bien es cierto que la medición es una parte importante de la econometría, el alcance de esta disciplina es mucho más amplio, como se deduce de las siguientes citas: La econometría, resultado de cierta perspectiva sobre el papel que desempeña la economía, consiste en la aplicación de la estadística matemática a los datos económicos para dar soporte empírico a los modelos construidos por la economía matemática y obtener resultados numéricos. Puede definirse como el análisis cuantitativo de fenómenos económicos reales, basados en el desarrollo simultáneo de la teoría y la observación, relacionados mediante métodos apropiados de inferencia. Tiene que ver con la determinación empírica de las leyes económicas. El arte del econometrísta consiste en encontrar un conjunto de supuestos lo bastante específicos y realistas para que le permitan aprovechar de la mejor manera los datos con que cuenta. 1.2.1 Especificación y estimación del modelo lineal

El análisis de regresión es una herramienta muy valiosa para el gerente actual. La regresión se ha utilizado para modelar cuestiones como la relación entre el nivel de educación y el ingreso, el precio de una casa y los pies cuadrados de construcción, así como el volumen de ventas para una compañía en relación con el dinero gastado en publicidad. Cuando un negocio intenta decidir cuál lugar es mejor para abrir una nueva tienda o sucursal, los modelos de regresión se utilizan con frecuencia. Los modelos de estimación de costos muchas veces son modelos de regresión. Las posibilidades de aplicación del análisis de regresión son prácticamente ilimitadas. En general, hay dos propósitos en el análisis de regresión. El primero es entender la relación entre las variables como gastos en publicidad y ventas. El segundo es predecir el valor de una de las variables con base en el valor de la otra. Por ello, la regresión es una técnica muy importante para realizar Diagramas de dispersión

Para investigar la relación entre las variables, es útil ver una gráfica de los datos. Esa gráfica se llama diagrama de dispersión o gráfica de dispersión. Generalmente, la variable independiente se grafica en el eje horizontal y la variable dependiente en el eje vertical. El siguiente ejemplo ilustrará esto. La compañía Triple A Construction remodela casas antiguas en Albany. Con el tiempo, la compañía encontró que su volumen de trabajo de remodelación en dólares dependía de la nómina del área de Albany. Las cifras para los ingresos de Triple A y la cantidad de dinero ganado por los trabajadores de Albany en los últimos seis años se presentan en la tabla 1. Los economistas han anticipado que la nómina en el área local será de $600 millones el próximo año y Triple A quiere planear de acuerdo con eso. La figura 1 es un diagrama de dispersión para los datos de Triple A Construction dados en la tabla 1. Esta grafica indica que los valores más altos para la nómina local parecen dar como resultado mayores ventas para la compañía. No hay una relación perfecta porque no todos los puntos están en línea recta, pero existe una relación. Se trazó una recta a través de los datos para ayudar a mostrar la relación que hay entre la nómina y las ventas. Los puntos no están todos sobre la recta, de manera que habría cierto error si tratáramos de predecir las ventas con base en la nómina, usando esta u otra recta. Pudieron dibujarse muchas líneas con estos puntos, pero ¿cuál es la que representa mejor la relación verdadera? El análisis de regresión ofrece la respuesta a esta pregunta.

Page 33: Módulo I. Desarrollo de habilidades del pensamiento lógico ...prouniversitarios.org/site/recursos/material-de-apoyo/tecnologias-de... · Módulo I. Desarrollo de habilidades del

TABLA 1 Ventas de la compañía Triple A Construction y la nómina local

FIGURA 1 Diagrama de dispersión de los datos de la compañía Triple A Construction

REGRESIÓN LINEAL SIMPLE

En cualquier modelo de regresión se tiene el supuesto implícito (que se puede probar) de que existe una relación entre las variables. También hay un error aleatorio que no se puede predecir. El modelo de regresión lineal simple fundamental es:

𝑌 = 𝛽0 + 𝛽1𝑥 + 𝜖

Donde. Y = Variable dependiente (variable de respuesta) X = Variable independiente (variable predictiva o variable explicativa) 𝛽0= Intersección (ordenada al origen, valor de Y cuando X = 0)

𝛽1 = Pendiente de regresión lineal

𝜖 = error aleatorio

No se conocen los valores reales para la intersección: se estiman usando los datos de la muestra. La ecuación de regresión basada en los datos de la muestra está dada por:

Ŷ = 𝑏0 + 𝑏1𝑥

Donde.

Ŷ = Valor pronosticado de Y

𝑏0= Estimación de 𝛽0, según los resultados de la muestra

𝑏1= Estimación de 𝛽1, según los resultados de la muestra

En el ejemplo de Triple A Construction, intentamos predecir las ventas, de modo que la variable dependiente (Y) serán las ventas. La variable que usamos para ayudar a predecir las ventas es la nómina en el área de Albany; entonces, esta es la variable independiente (X). Aunque se puede dibujar cualquier número de rectas a través de estos puntos para mostrar la relación entre X y Y en la figura 1, la recta que se elegirá es aquella que de alguna manera minimiza los errores. El error se define como: Error = (valor real) – (valor pronosticado)

𝑒 = 𝑌 – Ŷ

Page 34: Módulo I. Desarrollo de habilidades del pensamiento lógico ...prouniversitarios.org/site/recursos/material-de-apoyo/tecnologias-de... · Módulo I. Desarrollo de habilidades del

TABLA 2 Calculos de regresión para Triple A Construction

Como los errores son positivos o negativos, el error promedio debe ser cero aunque haya errores muy grandes, tanto positivos como negativos. Para eliminar la dificultad de que los errores negativos cancelen los errores positivos, los errores se elevan al cuadrado. La mejor recta de regresión se define como la que tiene la suma mínima de los cuadrados de los errores. Por tal razón, algunas veces el análisis de regresión se conoce como regresión de mínimos cuadrados. Los estadísticos han desarrollado fórmulas para encontrar la ecuación de una recta que minimiza la suma de los cuadrados de los errores. La ecuación de regresión lineal simple es:

Ŷ = 𝑏0 + 𝑏1𝑥 Las siguientes fórmulas sirven para calcular la intersección y la pendiente: _𝑋 =

∑ 𝑥

𝑛 = promedio (media) de los valores X

Ȳ =∑ 𝑥

6 = promedio (media) de los valores Y

𝑏1 = ∑( 𝑋 −

_𝑋) (𝑌 − Ȳ)

∑(𝑋 − _𝑋) ²

𝑏0 = Ȳ − 𝑏1

_𝑋

Los cálculos preliminares se dan en la tabla 2. Hay otras fórmulas “cortas” útiles cuando los cálculos se realizan con una calculadora y se incluyen en el apéndice 4.1. No se presentarán aquí, ya que se usará el software de cómputo en la mayoría de los ejemplos. Al calcular la pendiente y la intersección de la ecuación de regresión para el ejemplo de la compañía Triple A Construction, tenemos:

_𝑋 =

∑ 𝑥

6=

24

6= 4

Ȳ =∑ 𝑥

6=

42

6= 7

𝑏1 = ∑( 𝑋 −

_𝑋) (𝑌 − Ȳ)

∑(𝑋 − _𝑋)

2 = 12.5

10= 1.25

𝑏0 = Ȳ − 𝑏1

_𝑋 = 7 − (1.25)(4) = 2

La ecuación de regresión estimada es, entonces:

Ŷ = 2 + 1.25𝑋

Es decir. Ventas = 2 + 1.25X Si la nómina para el próximo año es de $600 millones (X = 6), entonces, el valor anticipado sería:

Ŷ = 2 + 1.25(6) = 9.5 O bien $950,000.

Page 35: Módulo I. Desarrollo de habilidades del pensamiento lógico ...prouniversitarios.org/site/recursos/material-de-apoyo/tecnologias-de... · Módulo I. Desarrollo de habilidades del

Uno de los propósitos de la regresión es entender la relación entre variables. Este modelo nos indica que por cada $100 millones (representados por X) de incremento en la nómina, esperaríamos que las ventas aumenten $125,000, ya que 𝑏1 = 1.25 (por $100,000). Este modelo ayuda a Triple A Construction a entender cómo se

relacionan la economía local y las ventas de la compañía. 2.1.2 Violaciones a los supuestos clásicos Si podemos hacer ciertos supuestos acerca de los errores en un modelo de regresión, podremos realizar pruebas estadísticas para determinar si el modelo es útil. Se plantean los siguientes supuestos acerca de los errores: Los errores son independientes. Los errores siguen una distribución normal. Los errores tienen una media de cero. Los errores tienen una varianza constante (sin importar el valor de X). Es posible validar los datos para saber si estos supuestos se cumplen. Con frecuencia una gráfica de los residuos resaltará cualesquiera transgresiones evidentes de los supuestos. Cuando los errores (residuos) se grafican contra la variable independiente, debería aparecer un patrón aleatorio. La figura 4 presenta algunos patrones de errores típicos, donde la figura 4A despliega un patrón que se espera cuando se cumplen las suposiciones y el modelo es adecuado. Los errores son aleatorios y no está presente un patrón discernible. La figura 4B ilustra un patrón donde los errores aumentan cuando X crece, lo cual transgrede el supuesto de varianza constante. La figura 4C ilustra errores que primero aumentan y luego disminuyen de manera consistente. Un patrón de este tipo indica que el modelo no es lineal y debería usarse alguna otra forma (tal vez cuadrática). En general, los patrones en la gráfica de errores indican problemas con los supuestos o la especificación del modelo. FIGURA 4A Patrones de errores que indican aleatoriedad

FIGURA 4B Varianza del error no constante

FIGURA 4C Errores que indican que la relación no es lineal

Page 36: Módulo I. Desarrollo de habilidades del pensamiento lógico ...prouniversitarios.org/site/recursos/material-de-apoyo/tecnologias-de... · Módulo I. Desarrollo de habilidades del

2.1.3 Pronóstico

Todos los días, los gerentes toman decisiones sin saber lo que ocurrirá en el futuro. Se ordena el inventario aunque no se sepa cuánto se venderá, se compra equipo nuevo aunque nadie conozca la demanda de productos y se realizan inversiones sin saber cuáles serán las ganancias. Los gerentes tratan siempre de reducir la incertidumbre e intentan hacer mejores estimaciones de lo que sucederá en el futuro. Lograr esto es el objetivo principal de la elaboración de los pronósticos. Existen muchas formas de pronosticar el futuro. En muchas empresas (sobre todo las pequeñas), el proceso completo es subjetivo e incluye los métodos improvisados, la intuición y los años de experiencia. También existen muchos modelos de pronósticos cuantitativos, como promedios móviles, suavizamiento exponencial, proyecciones de tendencias y análisis de regresión por mínimos cuadrados. Los siguientes pasos ayudan en el desarrollo de un sistema de pronósticos. Mientras que los pasos 5 y 6 quizá no sean relevantes si se selecciona el modelo cuantitativo en el paso 4 Ocho pasos para elaborar pronósticos

1. Determinar el uso del pronóstico: ¿qué meta tratamos de alcanzar? 2. Seleccionar los artículos o las cantidades que se van a pronosticar. 3. Determinar el horizonte de tiempo del pronóstico: ¿30 días (corto plazo), de 1 mes a un año (mediano plazo) o más de un año (largo plazo)? 4. Seleccionar el modelo o los modelos de pronósticos. 5. Reunir los datos o la información necesaria para realizar el pronóstico. 6. Validar el modelo del pronóstico. 7. Efectuar el pronóstico. 8. Implementar los resultados. Estos pasos indican de una manera sistemática cómo iniciar, diseñar e implementar un sistema de pronósticos. Cuando el sistema de pronósticos se usa para generar pronósticos periódicamente, los datos deben recolectarse por rutina, y los cálculos o procedimientos reales utilizados para hacer el pronóstico pueden hacerse de forma automática. Pocas veces existe un único método de pronósticos que sea superior. Una organización podría encontrar que la regresión es efectiva, otra tal vez aplique varios enfoques, y una tercera quizá combine técnicas cuantitativas y subjetivas. Cualquiera que sea la herramienta que funcione para una empresa, esa es la que debería usarse. 2.1.4 Uso de variables artificiales

Las variables que hemos usado en los ejemplos de regresión han sido variables cuantitativas como cifras de ventas, nóminas, pies cuadrados y antigüedad. Todas se han podido medir con facilidad y han tenido números asociados. Existen muchas situaciones en las cuales pensamos que una variable cualitativa en vez de una cuantitativa sería útil para predecir la variable dependiente Y. Por ejemplo, se puede usar regresión para encontrar una relación entre el ingreso anual y ciertas características de los empleados. Los años de experiencia en un trabajo dado serían una variable cuantitativa. Sin embargo, la información respecto a si un individuo tiene o no una carrera universitaria también podría ser importante. Este atributo no es un valor ni una cantidad medible, por lo que se usará una variable llamada ficticia (variable binaria o indicativa). A una variable ficticia se le asigna un valor de 1 si se cumple una condición específica (como que una persona tenga carrera universitaria) y un valor de 0 si no se cumple. Multicolinealidad

Cuando una variable independiente se correlaciona con otra variable independiente, se dice que las variables son colineales. Si una variable independiente se correlaciona con una combinación de otras variables independientes, existe la condición de multicolinealidad. Esto suele causar problemas al interpretar los coeficientes de las variables, pues varias de ellas dan información duplicada. Por ejemplo, si dos variables independientes fueran los gastos por nómina mensual de una compañía y los gastos anuales por salario de una compañía, la información proporcionada por una también la proporciona la otra. Varios conjuntos de coeficientes de regresión para estas dos variables llevarían justo a los mismos resultados. Por consiguiente, la interpretación de estas variables sería cuestionable, aun cuando el modelo en sí fuera todavía bueno respecto a los fines de predicción. Cuando hay multicolinealidad, la prueba F general aún es válida, pero las pruebas de hipótesis relacionadas con los coeficientes individuales no lo son. Una variable quizá parezca significativa cuando no lo es, o bien, una variable tal vez parezca insignificante cuando es significativa.

Page 37: Módulo I. Desarrollo de habilidades del pensamiento lógico ...prouniversitarios.org/site/recursos/material-de-apoyo/tecnologias-de... · Módulo I. Desarrollo de habilidades del

2.2. Pronóstico estadístico

2.2.1. Conocimiento de datos

Todos los días, los gerentes toman decisiones sin saber lo que ocurrirá en el futuro. Se ordena el inventario aunque no se sepa cuánto se venderá, se compra equipo nuevo aunque nadie conozca la demanda de productos y se realizan inversiones sin saber cuáles serán las ganancias. Los gerentes tratan siempre de reducir la incertidumbre e intentan hacer mejores estimaciones de lo que sucederá en el futuro. Lograr esto es el objetivo principal de la elaboración de los pronósticos. Existen muchas formas de pronosticar el futuro. En muchas empresas (sobre todo las pequeñas), el proceso completo es subjetivo e incluye los métodos improvisados, la intuición y los años de experiencia. También existen muchos modelos de pronósticos cuantitativos, como promedios móviles, suavizamiento exponencial, proyecciones de tendencias y análisis de regresión por mínimos cuadrados. Los siguientes pasos ayudan en el desarrollo de un sistema de pronósticos. Mientras que los pasos 5 y 6 quizá no sean relevantes si se selecciona el modelo cuantitativo en el paso 4, los datos sin duda son necesarios para los modelos de pronósticos cuantitativos presentados. Al igual que con los modelos de regresión, los diagramas de dispersión son muy útiles cuando se pronostican series de tiempo. Un diagrama de dispersión para una serie de tiempo se grafica en dos dimensiones, con el tiempo en el eje horizontal. La variable que se pronostica (como las ventas) se coloca en el eje vertical. Consideremos el ejemplo de una empresa que necesita pronosticar las ventas para tres productos diferentes. Wacker Distributors observa las ventas anuales de tres de sus productos –televisores, radios y reproductores de CD– durante los últimos 10 años (tabla 5.1). Una manera sencilla de examinar estos datos históricos y quizás usarlos para establecer un pronóstico, es dibujar un diagrama de dispersión para cada producto (figura 5.2). La gráfica ilustra la relación entre las ventas de un producto y el tiempo, y es útil para descubrir las tendencias o los ciclos. Después se desarrolla un modelo matemático exacto que describa esta situación, si parece razonable hacerlo. TABLA 5.1 Ventas Anuales de Tres Productos.

Page 38: Módulo I. Desarrollo de habilidades del pensamiento lógico ...prouniversitarios.org/site/recursos/material-de-apoyo/tecnologias-de... · Módulo I. Desarrollo de habilidades del

FIGURA 5.2 Diagrama de dispersión para ventas.

Uso de transformaciones lineales y no lineales

Regresión no lineal

Los modelos de regresión que hemos visto son modelos lineales. Sin embargo, algunas veces existen relaciones no lineales entre las variables. Se pueden aplicar algunas transformaciones de variables sencillas para crear un modelo aparentemente lineal a partir de una relación no lineal. Esto nos permite usar Excel y otros programas de regresión lineales para realizar los cálculos. Se demostrará esto con el siguiente ejemplo. Por cada automóvil nuevo vendido en Estados Unidos, la eficiencia de combustible (medida en millas por galón de gasolina [MPG] del automóvil) se despliega prominentemente en el engomado del parabrisas. Las MPG están relacionadas con varios factores, uno de los cuales es el peso del auto. En un intento por mejorar la eficiencia de la gasolina, se pide a los ingenieros de Colonel Motors que estudien el impacto del peso sobre las MPG. Ellos deciden que deberían usar un modelo de regresión para hacerlo. Se seleccionó una muestra de 12 automóviles nuevos y se registraron el peso y las MPG. La tabla 2.6 presenta los datos. El diagrama de dispersión de estos datos de la figura 2.6A indica el peso y las MPG. Se dibuja una recta de regresión a través de los puntos. Se usa Excel para desarrollar una ecuación de regresión lineal simple que relacione las MPG (Y) con el peso en miles de libras (𝑋1) como

Ŷ = 𝑏0 + 𝑏1𝑋1 TABLA 2.6 Peso contra MPG del automóvil

Page 39: Módulo I. Desarrollo de habilidades del pensamiento lógico ...prouniversitarios.org/site/recursos/material-de-apoyo/tecnologias-de... · Módulo I. Desarrollo de habilidades del

Figura 2.6A Modelo no lineal para los datos de MPG

FIGURA 2.6B Modelo para los datos de MPG

Programa 2.4 Salida de Excel para el modelo de regresión lineal con los datos del MPG

Page 40: Módulo I. Desarrollo de habilidades del pensamiento lógico ...prouniversitarios.org/site/recursos/material-de-apoyo/tecnologias-de... · Módulo I. Desarrollo de habilidades del

La salida de Excel se ilustra en el programa 2.4.

De ahí obtenemos la ecuación Ŷ = 47.6 − 8.2 𝑋1

Es decir, MPG = 47.6 – 8.6 (peso en 1,000Ib) El modelo es útil pues el nivel de significancia para la prueba F es pequeño y r²= 0.7446. No obstante, un examen más detallado de la gráfica de la figura 4.6A genera la pregunta acerca del uso de un modelo lineal. Tal vez exista una relación no lineal y quizás el modelo debería modificarse para tomar esto en cuenta. Un modelo cuadrático se ilustra en la figura 4.6B. Este modelo sería de la forma

𝑀𝑃𝐺 = 𝑏0 + 𝑏1(𝑝𝑒𝑠𝑜) + 𝑏2(𝑝𝑒𝑠𝑜)² La forma más sencilla de desarrollar este modelo es definir una nueva variable

𝑋2(𝑝𝑒𝑠𝑜)² Que nos da el modelo

Ŷ = 𝑏0 + 𝑏1𝑋1 + 𝑏2𝑋2

Podemos crear otra columna en Excel y correr de nuevo la herramienta de regresión. La salida se muestra en el programa 4.5. La nueva ecuación es:

Ŷ = 79.8 + 30.2𝑋1 + 3.4 𝑋2

El nivel de significancia para F es bajo (0.0002), de manera que el modelo es útil y r² = 0.8478. La r² ajustada aumentó de 0.719 a 0.814, de modo que esta nueva variable mejoró definitivamente el modelo. Este modelo sirve para realizar predicciones. Sin embargo, no deberíamos tratar de interpretar los coeficientes de las variables debido a la correlación entre 𝑋1 (peso) y 𝑋2 (peso al cuadrado). En general, interpretaríamos el

coeficiente de 𝑋1 como el cambio en Y que resulta de un cambio de 1 unidad en 𝑋1, mientras que todas las

demás variables se mantienen constantes. Es evidente que mantener una variable constante al tiempo que se

cambia la otra es imposible en este ejemplo, ya que 𝑋2 = 𝑋1² 2. Si 𝑋1 cambia, 𝑋2 también debe cambiar. Este es un ejemplo de un problema que existe cuando está presente la multicolinealidad. Otros tipos de no linealidades se manejan utilizando un enfoque similar. Existen varias transformaciones que ayudan a desarrollar un modelo lineal a partir de variables con relaciones no lineales. 2.2.3 Criterios de elección de técnicas de pronóstico 2.2.4 Modelos de pronósticos de series. Modelos de series de tiempo

Los modelos de series de tiempo intentan predecir el futuro usando datos históricos. Estos modelos suponen que lo que ocurra en el futuro es una función de lo que haya sucedido en el pasado. En otras palabras, los modelos de series de tiempo ven qué ha pasado durante un periodo y usan una serie de datos históricos para realizar un pronóstico. Entonces, si queremos pronosticar las ventas semanales de las podadoras de césped, utilizamos las ventas semanales anteriores de las podadoras para realizar el pronóstico. Los modelos de series de tiempo que examinaremos son promedios móviles, suavizamiento exponencial, proyecciones de tendencia y descomposición. Es posible recurrir al análisis de regresión en las proyecciones de tendencia y en un tipo de modelo de descomposición. Modelos causales

Los modelos causales incorporan las variables o factores que pueden influir en la cantidad que se pronostica con el modelo de elaboración de pronósticos. Por ejemplo, las ventas diarias de una gaseosa de cola quizá dependan de la estación, la temperatura promedio, la humedad promedio, si es fin de semana o día laborable, etcétera. Los modelos causales intentarán incluir factores como temperatura, humedad, estación, día de la semana, etcétera. Los modelos causales también pueden incluir datos históricos de ventas, como hacen los modelos de series de tiempo, pero incluyen otros factores.

Page 41: Módulo I. Desarrollo de habilidades del pensamiento lógico ...prouniversitarios.org/site/recursos/material-de-apoyo/tecnologias-de... · Módulo I. Desarrollo de habilidades del

Modelos de pronóstico

Nuestro trabajo como analistas cuantitativos es desarrollar la mejor relación estadística entre las ventas o la variable que pronosticamos, y el conjunto de variables independientes. El modelo causal cuantitativo más común es el análisis de regresión. Existen otros modelos causales y muchos de ellos se basan en el análisis de regresión. Modelos cualitativos

En tanto que las series de tiempo y los modelos causales se basan en datos cuantitativos, los modelos cualitativos intentan incorporar factores subjetivos o de opiniones en los modelos de pronósticos. Se suelen tomar en cuenta las opiniones de expertos, las experiencias y los juicios individuales, u otros factores subjetivos. Los modelos cualitativos son útiles sobre todo cuando se espera que los factores subjetivos sean muy importantes o cuando es difícil obtener datos cuantitativos precisos. Se presenta una descripción breve de cuatro diferentes técnicas cualitativas de pronósticos: Método Delphi. Este proceso iterativo de grupo permite que expertos, quienes podrían encontrarse en diferentes lugares, hagan pronósticos. Hay tres tipos de participantes diferentes en el proceso Delphi: quienes toman decisiones, el personal y encuestados. El grupo que toma las decisiones suele consistir entre 5 a 10 expertos que harán en realidad el pronóstico. El personal ayuda a los que toman las decisiones para preparar, distribuir, recolectar, y resumir una serie de cuestionarios y resultados de las encuestas. Los encuestados son un grupo de individuos cuyo juicio se valora y se busca obtener. Este grupo brinda información a quienes toman las decisiones antes de realizar el pronóstico. En el método Delphi, cuando se obtienen los resultados del primer cuestionario, estos se resumen y se modifica el cuestionario. Tanto el resumen de resultados como el nuevo cuestionario se envían al mismo grupo de encuestados para una nueva ronda de respuestas. Quienes responden, después de ver los resultados del primer cuestionario, quizá vean las cosas de manera diferente y modifiquen sus respuestas originales. Este proceso se repite con la esperanza de llegar a un consenso. Jurado de opinión ejecutiva. Este método toma las opiniones de un pequeño grupo de gerentes de alto nivel, con frecuencia en combinación con modelos estadísticos y los resultados de la estimación de la demanda. Consulta a vendedores. En este enfoque, cada persona de ventas estima las ventas en su región; estos pronósticos se revisan para asegurar que sean realistas y después se combinan a niveles de región y nacional, para llegar a un pronóstico general. Encuesta al mercado de consumidores. Este método solicita información a los consumidores o clientes potenciales respecto a sus planes de compra futuros. Puede ayudar no solo a elaborar un pronóstico, sino también a mejorar el diseño del producto y la planeación de nuevos productos. 2.2.5 Evaluación y aplicación de pronósticos Evaluación de la hipótesis planteada. Hipótesis nula “cero” y regla práctica “2t”

La hipótesis nula que es objeto frecuente de prueba en el trabajo empírico es H0: β2 = 0, es decir, el coeficiente de la pendiente es cero. Esta hipótesis nula de “cero” es un mecanismo para establecer si Y tiene relación con X, la variable explicativa. Si, para empezar, no existe relación entre Y y X, entonces no tiene caso probar una hipótesis como β2 = 0.3 o cualquier otro valor Selección del nivel de significancia α

Del análisis expuesto hasta ahora, debe tenerse claro que rechazar o no una hipótesis nula depende de α, el nivel de significancia o probabilidad de cometer un error tipo I, o sea, la probabilidad de rechazar la hipótesis cuando es verdadera. Nivel exacto de significancia: Valor p

Como recién mencionamos, el talón de Aquiles del método clásico de la prueba de hipótesis es su arbitrariedad al seleccionar α. Una vez obtenido un estadístico de prueba (es decir, el estadístico t) en un ejemplo dado, ¿por qué no tan sólo consultar la tabla estadística adecuada y encontrar la probabilidad real de obtener un valor del estadístico de prueba tan grande o mayor que el obtenido en el ejemplo? Esta probabilidad se denomina valor p (es decir, valor de probabilidad), también conocido como nivel observado o exacto de significancia, o probabilidad exacta de cometer un error tipo I. Más técnicamente, el valor p se define como nivel de significancia más bajo al cual puede rechazarse una hipótesis nula.

Page 42: Módulo I. Desarrollo de habilidades del pensamiento lógico ...prouniversitarios.org/site/recursos/material-de-apoyo/tecnologias-de... · Módulo I. Desarrollo de habilidades del

2.3 Análisis de series de tiempo 2.3.1 Descomposición de series de tiempo

Analizar una serie de tiempo significa desglosar los datos históricos en sus componentes y, luego, proyectarlos hacia el futuro. En general, una serie de tiempo tiene cuatro componentes: Tendencia (T) es el movimiento gradual hacia arriba o hacia abajo de los datos en el tiempo. Estacionalidad (S, por seasonality) es el patrón de la fluctuación de la demanda arriba o abajo de la recta de tendencia que se repite a intervalos regulares. Ciclos (C) son patrones en los datos anuales que ocurren cada cierto número de años. Suelen estar vinculados al ciclo de negocios. Variaciones aleatorias (R por Random variations) son “saltos” en los datos ocasionados por el azar y por situaciones inusuales; no siguen un patrón discernible. 2.3.2 Elementos de ecuaciones en diferencia

En ocasiones, al construir un modelo matemático interesa elegir una variable que tome valores discretos. Así ocurre, por ejemplo, con el tiempo, ya que es común realizar mediciones regulares a la hora de controlar un experimento. Estos datos constituyen un conjunto finito, o infinito numerable, de valores de la variable in-dependiente. Para este tipo de modelos determinísticos discretos, las herramientas matemáticas más adecuadas para analizarlos son las ecuaciones en diferencias y los sistemas en diferencias. Comenzaremos con los conceptos y definiciones básicas y nos centraremos en el estudio de las ecuaciones en diferencias lineales de primer y segundo orden con coeficientes constantes, así como en los sistemas de ecuaciones diferenciales de primer orden con coeficientes constantes. Llamaremos t a la variable independiente, y supondremos que sólo toma los valores enteros t = 0; 1; 2; ….Generalmente, t representa el número de generaciones (años, trimestres, meses, días, …..) que han transcurrido desde un momento inicial t = 0. Del mismo modo, {Y0, y1, y2, ….} es una sucesión, donde yt corresponde a un valor concreto de t. Lamamos una ecuación en diferencias a una expresión del tipo:

Una solución de la misma, es toda es toda sucesión “y” que la cumpla. El conjunto de todas las soluciones recibe el nombre de solución general. Esta solución general presenta cierto número de parámetros, que pueden determinarse a partir de las condiciones iniciales, dando lugar a las diferentes soluciones particulares.

Page 43: Módulo I. Desarrollo de habilidades del pensamiento lógico ...prouniversitarios.org/site/recursos/material-de-apoyo/tecnologias-de... · Módulo I. Desarrollo de habilidades del

2.3.3 Familia y construcción de Modelos ARIMA Modelos ARIMA

La publicación de G. P. E. Box y G. M. Jenkins Time Series Analysis: Forecasting and Control, op. cit., marcó el comienzo de una nueva generación de herramientas de pronóstico. Popularmente conocida como metodología de Box-Jenkins (BJ), pero técnicamente conocida como metodología ARIMA, el interés de estos métodos de pronósticos no está en la construcción de modelos uniecuacionales o de ecuaciones simultáneas, sino en el análisis de las propiedades probabilísticas, o estocásticas, de las series de tiempo económicas por sí mismas según la filosofía de que los datos hablen por sí mismos. A diferencia de los modelos de regresión, en los cuales Yt se explica por las k regresoras X1, X2, X3, . . . , Xk, en los modelos de series de tiempo del tipo BJ, Yt se explica por valores pasados o rezagados de sí misma y por los términos de error estocásticos. Por esta razón, los modelos ARIMA reciben algunas veces el nombre de modelos ateóricos —porque no se derivan de teoría económica alguna—, y las teorías económicas a menudo son la base de los modelos de ecuaciones simultáneas. A propósito, observe que la atención se centra en los modelos ARIMA univariados, es decir, en los modelos ARIMA que pertenecen a una sola serie de tiempo. No obstante, el análisis puede extenderse a modelos ARIMA multivariados. Modelos VAR

A primera vista, la metodología VAR se asemeja a los modelos de ecuaciones simultáneas, pues considera diversas variables endógenas de manera conjunta. Pero cada variable endógena se explica por sus valores rezagados, o pasados, y por los valores rezagados de todas las demás variables endógenas en el modelo; usualmente no hay variables exógenas en el modelo. En lo resta analizaremos las bases de los enfoques de Box-Jenkins y VAR para los pronósticos económicos. El análisis es elemental y heurístico. Creación de modelos AR, PM y ARIMA para series de tiempo

Para presentar diversas ideas, antiguas y nuevas, aquí trabajaremos con la serie de tiempo del PIB de Estados Unidos (consulte los datos reales en el sitio Web del libro). La gráfica de dicha serie de tiempo se ilustró en las figuras 2.3.3.1 (logaritmo del PIB no diferenciado) y 2.3.3.2 (LPIB en primeras diferencias); recuerde que el LPIB en su forma de nivel es no estacionario, pero en su forma de (primeras) diferencias sí lo es. Figura 2.3.3.1 Pib de E.U.

Figura 2.3.3.2

Page 44: Módulo I. Desarrollo de habilidades del pensamiento lógico ...prouniversitarios.org/site/recursos/material-de-apoyo/tecnologias-de... · Módulo I. Desarrollo de habilidades del

Si una serie de tiempo es estacionaria, se puede modelar en diversas formas. Proceso autorregresivo (AR) Sea Yt el logaritmo del PIB en el periodo t. Si se modela Yt como (Yt − δ)= α1(Yt−1 − δ) + ut (22.2.1) donde δ es la media de Y y ui es un término de error aleatorio no correlacionado con media cero y varianza constante σ2 (es decir, ruido blanco), se dice que Yt sigue un proceso estocástico autorregresivo de primer orden, o AR(1). Aquí el valor de Y en el tiempo t depende de su valor en el periodo anterior y de un término aleatorio; los valores de Y están expresados como desviaciones de su valor medio. En otras palabras, este modelo dice que el valor de pronóstico de Y en el periodo t es simplemente alguna proporción ( α1) de su valor en el periodo (t − 1) más un “choque” o perturbación aleatoria en el tiempo t; de nuevo, los valores de Y están expresados alrededor del valor de su media. Pero si consideramos este modelo, (Yt − δ)= α1(Yt−1 − δ) + α3(Yt−2 − δ) + ut decimos que Yt sigue un proceso autorregresivo de segundo orden o AR(2). Es decir, el valor de Y en el tiempo t depende de sus valores en los dos periodos anteriores, los valores de Y expresados alrededor del valor de su media δ. En general, tenemos (Yt − δ) =α1(Yt−1 − δ) + α2(Yt−2 − δ) +···+ αp(Yt−p − δ) + ut (22.2.3) en cuyo caso Yt es un proceso autorregresivo de orden p, o AR(p). Observe que en todos los modelos anteriores sólo se consideran los valores actuales y anteriores de Y; no hay otras regresoras. En este sentido, decimos que “los datos hablan por sí mismos”. Son una clase de modelos de forma reducida a los cuales hicimos referencia en el análisis de los modelos de ecuaciones simultáneas. Proceso de medias móviles (MA) El proceso AR recién expuesto no es el único mecanismo que pudo generar a Y. Suponga que hacemos un modelo de Y de la siguiente manera: Yt= μ + β0ut + β1ut−1 (22.2.4) donde μ es una constante y u, al igual que antes, es el término de error estocástico de ruido blanco. Aquí, Y en el periodo t es igual a una constante más un promedio móvil de los términos de error presente y pasado. Así, en este caso decimos que Y sigue un proceso de promedios móviles de primer orden, o MA(1). Pero si Y sigue la expresión Yt= μ + β0ut + β1ut−1 + β2ut−2 (22.2.5) es un proceso MA(2). En forma más general, Yt= μ + β0ut + β1ut−1 + β2ut−2 +···+ βq ut−q (22.2.6) es un proceso MA(q). En resumen, un proceso de promedios móviles es tan sólo una combinación lineal de términos de error de ruido blanco. Proceso autorregresivo y de promedios móviles (ARMA) Desde luego, es muy probable que Y tenga características de AR y de MA a la vez, y, por consiguiente, sea ARMA. Así, Yt sigue un proceso ARMA(1, 1) si se escribe como Yt= θ + α1Yt−1 + β0ut + β1ut−1 (22.2.7) porque hay un término autorregresivo y uno de promedios móviles. En (22.2.7), θ representa un término constante. En general, en un proceso ARMA(p, q), habrá p términos autorregresivos y q términos de promedios móviles.

Page 45: Módulo I. Desarrollo de habilidades del pensamiento lógico ...prouniversitarios.org/site/recursos/material-de-apoyo/tecnologias-de... · Módulo I. Desarrollo de habilidades del

Proceso autorregresivo integrado de promedios móviles (ARIMA)

Los modelos de series de tiempo analizados se basan en el supuesto de que las series de tiempo consideradas son (débilmente) estacionarias. En pocas palabras, la media y la varianza de una serie de tiempo débilmente estacionaria son constantes y su covarianza es invariante en el tiempo. Pero sabemos que muchas series de tiempo económicas son no estacionarias, es decir, son integradas. Sin embargo, vimos también que si una serie de tiempo es integrada de orden 1 [es decir, si es I(1)], sus primeras diferencias son I(0), es decir, estacionarias. En forma similar, si una serie de tiempo es I(2), sus segundas diferencias son I(0). En general, si una serie de tiempo es I(d), después de diferenciarla d veces se obtiene una serie I(0). Por consiguiente, si debemos diferenciar una serie de tiempo d veces para hacerla estacionaria y luego aplicarle el modelo ARMA(p,q), decimos que la serie de tiempo original es ARIMA(p, d, q), es decir, es una serie de tiempo autorregresiva integrada de promedios móviles, donde p denota el número de términos autorregresivos, d el número de veces que la serie debe diferenciarse para hacerse estacionaria y q el número de términos de promedios móviles. Así, una serie de tiempo ARIMA(2, 1, 2) tiene que diferenciarse una vez (d 1) antes de que se haga estacionaria, y la serie de tiempo estacionaria (en primeras diferencias) puede modelarse como un proceso ARMA(2, 2), es decir, tiene dos términos AR y dos términos MA. Desde luego, si d 0 (es decir, si para empezar la serie es estacionaria), ARIMA(p, d= 0, q) ARMA(p, q). Observe que un proceso ARIMA(p, 0, 0) significa un proceso estacionario AR(p) puro; un ARIMA (0, 0, q) significa un proceso estacionario MA(q) puro. Con los valores de p, d y q sabemos de qué proceso se está haciendo el modelo. El punto importante es que, para utilizar la metodología Box-Jenkins, debemos tener una serie de tiempo estacionaria o una serie de tiempo que sea estacionaria después de una o más diferenciaciones. La razón para suponer estacionariedad se explica de la siguiente manera: El objetivo de BJ [Box-Jenkins] es identificar y estimar un modelo estadístico que se interprete como generador de los datos muestrales. Entonces, si se va a pronosticar con este modelo estimado, debe suponerse que sus características son constantes a través del tiempo y, en particular, en periodos futuros. Así, la sencilla razón para requerir datos estacionarios es que todo modelo que se infiera a partir de estos datos pueda interpretarse como estacionario o estable en sí mismo, y proporcione, por consiguiente, una base válida para pronosticar. Metodología de Box-Jenkins (BJ)

La pregunta del millón de dólares es obvia: al ver una serie de tiempo, como la serie del PIB de Estados Unidos en la fi gura 2.3.3.1, ¿cómo sabemos si sigue un proceso AR puro (de ser así, cuál es el valor de p), un proceso MA puro (de ser así, cuál es el valor de q), un proceso ARMA (de ser así, cuáles son los valores de p y q) o un proceso ARIMA, en cuyo caso se deben conocer los valores de p, d y q? La metodología BJ resulta útil para responder la pregunta anterior. El método considera cuatro pasos: Paso 1. Identificación. Es decir, encontrar los valores apropiados de p, d y q. En seguida veremos la forma como

el correlograma y el correlograma parcial ayudan en esta labor. Paso 2. Estimación. Tras identificar los valores apropiados de p y q, la siguiente etapa es estimar los parámetros

de los términos autorregresivos y de promedios móviles incluidos en el modelo. Algunas veces, este cálculo se efectúa mediante mínimos cuadrados simples, pero otras hay que recurrir a métodos de estimación no lineal (en parámetros). Como esta labor se lleva a cabo ahora a través de rutinas en diversos paquetes estadísticos, en la práctica no es preciso preocuparse por los desarrollos matemáticos de la estimación; el estudiante interesado en el tema puede consultar las referencias. Paso 3. Examen de diagnóstico. Después de seleccionar un modelo ARIMA particular y de estimar sus

parámetros, tratamos de ver si el modelo seleccionado se ajusta a los datos en forma razonablemente buena, pues es posible que exista otro modelo ARIMA que también lo haga. Es por esto que el diseño de modelos ARIMA de Box-Jenkins es un arte más que una ciencia; se requiere gran habilidad para seleccionar el modelo ARIMA correcto. Una simple prueba del modelo seleccionado es ver si los residuales estimados a partir de este modelo son de ruido blanco; si lo son, aceptamos el ajuste particular; si no lo son, debemos empezar de nuevo. Por tanto, la metodología BJ es un proceso iterativo Paso 4. Pronóstico. Una razón de la popularidad del proceso de construcción de modelos ARIMA es su éxito en

el pronóstico. En muchos casos, los pronósticos obtenidos por este método son más confiables que los obtenidos de modelos econométricos tradicionales, en particular en el caso de pronósticos de corto plazo. Por supuesto, cada caso debe verificarse.

Page 46: Módulo I. Desarrollo de habilidades del pensamiento lógico ...prouniversitarios.org/site/recursos/material-de-apoyo/tecnologias-de... · Módulo I. Desarrollo de habilidades del

Identificación

Las herramientas principales en la identificación son la función de autocorrelación (FAC), la función de autocorrelación parcial (FACP) y los correlogramas resultantes, que son simplemente los gráficos de FAC y de FACP respecto de la longitud del rezago. En el capítulo anterior defi nimos la FAC ρk (poblacional) y la FAC ρˆk (muestral). El concepto de autocorrelación parcial es análogo al concepto de coeficiente de regresión parcial. En el modelo de regresión múltiple con k variables, el késimo coeficiente de regresión βk mide la tasa de cambio en el valor medio de la variable regresada ante un cambio unitario en la k-ésima regresora Xk, para mantener constante la influencia de todas las demás regresoras. En forma similar, la autocorrelación parcial ρkk mide la correlación entre observaciones (series de tiempo) separadas k periodos y mantiene constantes las correlaciones en los rezagos intermedios (es decir, rezagos menores de k). En otras palabras, la autocorrelación parcial es la correlación entre Yt y Yt–k después de eliminar el efecto de las Y intermedias.7 En la sección 7.11 presentamos el concepto de correlación parcial en el contexto de regresión y vimos su relación con las correlaciones simples. Tales correlaciones parciales se calculan ahora mediante rutinas en la mayoría de los paquetes estadísticos. En la figura 2.3.3.3 presentamos el correlograma y el correlograma parcial de la serie LPIB. En esta figura sobresalen dos hechos: primero, la FAC decrece muy lentamente; como se ve en la figura 2.3.3.4, la FAC hasta el rezago 23 es estadísticamente diferente de cero en un nivel individual, pues todas están fuera de los límites a 95% de confianza. Segundo, después del primer rezago, la FACP decrece en forma considerable y todas las FACP, después del primer rezago, son estadísticamente no significativas, salvo quizá por el rezago 13. Figura 2.3.3.3 Correlograma y correlograma parcial de la serie LPIB

Page 47: Módulo I. Desarrollo de habilidades del pensamiento lógico ...prouniversitarios.org/site/recursos/material-de-apoyo/tecnologias-de... · Módulo I. Desarrollo de habilidades del

Figura 2.3.3.4 Correlograma

Como la serie de tiempo LPIB de Estados Unidos es no estacionaria, debemos convertirla en estacionaria antes de aplicar la metodología de Box-Jenkins. En la figura 2.3.3.2 graficamos la serie de primeras diferencias del LPIB. En contraste con la figura 2.3.3.1, no se observa ninguna tendencia en esta serie, lo que sugiere que quizá la serie de tiempo del LPIB en primeras diferencias es estacionaria.8 Una aplicación formal de la prueba de raíz unitaria de Dickey-Fuller muestra que así sucede, en efecto. Lo anterior también se visualiza mediante los correlogramas FAC y FACP estimados en los paneles a) y b) de la fi gura 2.3.3.5. Ahora tenemos un patrón muy diferente de FAC y de FACP. Las FACs en los rezagos 1, 2 y 5 parecen estadísticamente diferentes de cero; recuerde, que los límites de confianza aproximados a 95% para ρk son −0.2089 y +0.2089.

Page 48: Módulo I. Desarrollo de habilidades del pensamiento lógico ...prouniversitarios.org/site/recursos/material-de-apoyo/tecnologias-de... · Módulo I. Desarrollo de habilidades del

Figura 2.3.3.5 a) correlograma y b) correlograma parcial de las primeras diferencias de LPIB de E.U. I-1947 a IV 2007

Pero, en todos los demás rezagos, no son estadísticamente diferentes de cero. Para las autocorrelaciones parciales, sólo los rezagos 1 y 12 parecen estadísticamente diferentes de cero. Ahora, ¿cómo permiten los correlogramas de la figura 2.3.3.5 encontrar el patrón ARMA de la serie de tiempo del PIB? (Nota: Sólo consideraremos la serie del PIB en primeras diferencias por ser estacionaria.) Una forma de lograrlo es considerar la FAC y la FACP, y los correlogramas asociados de un número seleccionado de procesos ARMA, como AR(1), AR(2), MA(1), MA(2), ARMA(1,1), ARIMA(2,2), y así sucesivamente. Como cada proceso estocástico presenta patrones habituales de FAC y de FACP, si la serie de tiempo en estudio se ajusta a alguno de estos patrones, la podemos identificar con tal proceso. Desde luego, será necesario aplicar pruebas de diagnóstico para determinar si el modelo seleccionado ARMA es razonablemente preciso. El estudio de las propiedades de los diversos procesos estándar ARIMA consumiría mucho espacio. En su lugar, ofrecemos lineamientos generales; Tabla 2.3.3.1 Patrones teóricos FAC y FACP

Page 49: Módulo I. Desarrollo de habilidades del pensamiento lógico ...prouniversitarios.org/site/recursos/material-de-apoyo/tecnologias-de... · Módulo I. Desarrollo de habilidades del

Observe que las FAC y las FACP de los procesos AR(p) y MA(q) tienen patrones opuestos; en el caso AR(p), la FAC decrece geométrica o exponencialmente, pero la FACP se corta después de cierto número de rezagos, mientras que sucede lo opuesto a un proceso MA(q). Geométricamente, estos patrones se muestran en la figura 2.3.3.6. Figura 2.3.3.6

Advertencia

Como en la práctica no se observan las FAC y FACP teóricas y se depende, por tanto, de sus aproximaciones muestrales, las FAC y FACP estimadas no concordarán exactamente con sus contrapartes teóricas. Buscamos una similitud entre las FAC y las FACP teóricas y muestrales de manera que señalen la dirección correcta en la construcción de los modelos ARIMA. Es por esto que la elaboración de modelos ARIMA requiere gran habilidad, lo cual, desde luego, se obtiene con la práctica. Identificación ARIMA del PIB de Estados Unidos

Al considerar de nuevo el correlograma y el correlograma parcial de LPIB estacionario (después de la primera diferenciación) de Estados Unidos de I-1947 a IV-2007 de la fi gura 2.3.3.5, ¿qué observamos? Recordemos que la FAC y la FACP son cantidades muestrales, y no tenemos un patrón decente como los propuestos en la tabla 2.3.3.1. Las autocorrelaciones (panel a) decrecen en los primeros dos rezagos y luego, con excepción del rezago 5, los restantes no son estadísticamente diferentes de cero (el área gris en las figuras da los límites de confianza aproximados a 95%). Las autocorrelaciones parciales (panel b) con picos en los rezagos 1 y 12 parecen estadísticamente significativas, pero el resto no; si el coeficiente de correlación parcia fuera significativo solamente en el rezago 1, podríamos haberlo identificado como un modelo AR(1). Supongamos por tanto que el proceso que generó la serie LPIB (en primeras diferencias) es un proceso MA(2). Tenga en cuenta que, a menos que la FAC y la FACP no estén bien definidas, será difícil elegir un modelo sin ensayo y error. Se invita al lector a probar otros modelos ARIMA con la serie LPIB en primeras diferencias.

Page 50: Módulo I. Desarrollo de habilidades del pensamiento lógico ...prouniversitarios.org/site/recursos/material-de-apoyo/tecnologias-de... · Módulo I. Desarrollo de habilidades del

2.3.4 Pruebas de raíces unitarias

Para ver cómo funciona la prueba, podemos modelar la inflación como series de tiempo:

donde πt es la tasa de inflación y εt es un error aleatorio en t. Podemos incluir otras variables que son puramente una función del tiempo (tales como la tendencia o variables dumi. Para tratar de explicar los quiebres estructurales), las cuales agrupamos en ϕ (t) . La ecuación, es la representación de serie de tiempo de la inflación, que describe a la inflación solo como una función de sus propios valores rezagados, errores ARMA (proceso autorregresivo de promedios móviles) estacionarios, y procesos dependientes del tiempo. Una prueba de raíz unitaria estándar consiste en inferir si la inflación es un proceso diferenciado estacionario según se estima en la ecuación. En nuestro primer ejercicio mostramos la forma en que se debe realizar dicha prueba. Estas pruebas pueden ser poco confiables, especialmente con intervalos cortos de datos, de modo que ponemos de relieve las circunstancias principales según las cuales estas pruebas fallan. En particular, resulta difícil usar pruebas estándar para distinguir con exactitud entre diferentes formas de comportamiento económico no estacionario: estacionarias en tendencia, estacionarias en diferencia, quiebres estructurales e incluso procesos de cuasiraíz unitaria. A continuación pasaremos a demostrar una generación posterior de pruebas destinadas a hacer frente a estos problemas. Estas pruebas son menos generales: cada una se aplica a una serie de supuestos diferentes acerca de la ecuación. Esto plantea la cuestión adicional acerca de cómo proceder con la prueba de raíz unitaria cuando se posee información limitada sobre las otras propiedades de las series de tiempo. Lo anterior puede resultar útil en particular para distinguir entre alternativas de importancia para los pronósticos. Por ejemplo, un ajuste exógeno temporal conducirá a un cambio en el pronóstico a largo plazo para el PIB mundial si éste fuera un proceso estacionario en diferencia, mientras que si fuera un proceso estacionario en tendencia, su pronóstico a largo plazo no sería afectado. Los pronósticos pueden ser de más ayuda cuando se consideran como una secuencia de distribuciones de probabilidad más que de números. En adición a la proyección central, la incertidumbre condicional también puede variar dependiendo de cómo se modela la no estacionariedad Una variable que tiene raíz unitaria no necesariamente implica que la regresión sea espuria, pues podría ser que las variables sean estacionarias en diferencia pero relacionadas en el largo plazo y, por lo tanto, cointegradas. Como nuestro objetivo ulterior consiste en construir modelos estructurales especificados en forma correcta, esto quiere decir que necesitamos comprender cómo interactúan las variables mediante el empleo de técnicas multivariadas. 2.3.5. Modelo de series estacionales

Además de la tendencia secular y de la variación cíclica, una serie de tiempo incluye la variación estacional. Este tipo de variación se define como un movimiento repetitivo y predecible alrededor de la línea de tendencia en un año o menos. Con el fin de detectar la variación estacional, los intervalos de tiempo necesitan medirse en unidades pequeñas, como días, semanas, meses o trimestres. Tenemos tres razones principales para el estudio de la variación estacional: 1. Podemos establecer el patrón de cambios pasados. Proporciona una forma de comparar dos intervalos de tiempo que de otro modo serían bastante disímiles. Si una escuela de capacitación de pilotos desea saber si una depresión en los negocios durante el mes de diciembre es normal, puede examinar el patrón estacional en los años anteriores y encontrar la información que necesita. 2. Es útil proyectar los patrones pasados al futuro. En el caso de decisiones de largo alcance, el análisis de tendencia secular puede resultar adecuado. Pero para decisiones a corto plazo, la habilidad de pronosticar fluctuaciones estacion ales a menudo es esencial. Considere una cadena de venta de alimentos al mayoreo que desea mantener una existencia mínima adecuada en todos sus productos. La habilidad de pronosticar patrones de corto plazo, como la demanda de pavo en Navidad, dulces el Día del Niño o duraznos en verano, es útil para la administración de la cadena.

Page 51: Módulo I. Desarrollo de habilidades del pensamiento lógico ...prouniversitarios.org/site/recursos/material-de-apoyo/tecnologias-de... · Módulo I. Desarrollo de habilidades del

3. Una vez establecido el patrón estacional existente, podemos eliminar sus efectos de la serie de tiempo. Este ajuste nos permite calcular la variación cíclica que se lleva a cabo cada año. Cuando eliminamos el efecto de la variación estacional de una serie de tiempo, hemos desestacionalizado la serie. Método de razón del promedio móvil. Con el fin de medir la variación estacional, es común usar el método de razón de promedio móvil. Esta técnica proporciona un índice que describe el grado de variación estacional. El índice está basado en una media de 100, con el grado de estacionalidad medido por las variaciones respecto a la base. Pasos para el cálculo del índice estacional

El primer paso en el cálculo de un índice estacional consiste en calcular el total móvil de los periodos para la serie de tiempo. Calcular el promedio móvil de los periodos, dividiendo entre el número de periodos cada uno de los totales. En el tercer paso, centrar el promedio móvil de los periodos Calcular el porcentaje del valor real con respecto al valor del promedio móvil para cada periodo de la serie de tiempo Calcule la media modificada para cada trimestre. Esta media modificada se calcula descartando los valores más alto y más bajo de cada trimestre y promediando los valores restantes Ajuste de la media modificada. El método de razón del promedio móvil que acabamos de estudiar, nos permite identificar la variación estacional de una serie de tiempo. Los índices estacionales se utilizan para eliminar los efectos de estacionalidad de una serie de tiempo. A este proceso se le denomina desestacionalización de una serie de tiempo. Antes de poder identificar la componente de tendencia o la cíclica de una serie de tiempo, es necesario eliminar la variación estacional. Pronóstico y aplicación de series de tiempo

Recuerde que los datos del PIB son para el periodo I-1947 a IV-2007. Suponga, que deseamos pronosticar el LPIB para el primero de los cuatro trimestres de 2008. Pero, la variable dependiente es el cambio en el LPIB en el trimestre anterior. Para obtener el pronóstico de nivel del LPIB en lugar de sus cambios, podemos “deshacer” la transformación de primeras diferencias con que obtuvimos los cambios. (Más técnicamente, integramos la serie de primeras diferencias.) Así, para obtener el valor de pronóstico del LPIB (no de PIB) para I-2008, reescribimos el modelo como Y2008-I − Y2007-IV= μ + β1u2007-IV + β2u2007-III + u2008-I Es decir, Y2008-I= μ + β1u2007-IV + β2u2007-III + u2008-I + Y2007-IV (22.7.2) Los valores de μ, β1 y β2 ya se conocen de la regresión estimada. Se supone que el valor de u2008-I es cero. Por consiguiente, obtenemos fácilmente el valor de pronóstico de Y2008-I. La estimación numérica de este valor de pronóstico es: Y2008-I= 0.00822 + (0.2918)u2007-IV + (0.2024)(u2007-III) + Y2007-IV =0.00822 + (0.2918)(0.00853) + (0.2024)(−0.00399) + 9.3653 =9.3741(aprox.) Así, el valor de pronóstico de LPIB para I-2008 es de alrededor de 9.3741, que equivale a unos 11 779 millones de dólares (de 2000). A propósito, el valor observado del PIB real para I-2008 fue de 11 693.09 millones de dólares; el error de pronóstico fue una sobreestimación de 86 000 millones de dólares.

Page 52: Módulo I. Desarrollo de habilidades del pensamiento lógico ...prouniversitarios.org/site/recursos/material-de-apoyo/tecnologias-de... · Módulo I. Desarrollo de habilidades del

Desestacionalización de series económicas

2.4.1 Métodos básicos

2.4.2 Programas de cómputo

En muchas aplicaciones de los pronósticos, las computadoras son indispensables. Con frecuencia, las empresas tienen que preparar pronósticos para cientos o incluso miles de productos o servicios en forma reiterada. Por ejemplo, una amplia red de instalaciones de servicio médico necesita calcular pronósticos de la demanda de cada uno de sus servicios en cada departamento. Esta operación implica grandes volúmenes de datos que deben ser manipulados con frecuencia. Los analistas tienen que examinar las series de tiempo que corresponden a cada producto o servicio a fin de elaborar un pronóstico. Existen dos tipos de paquetes de cómputo de ayuda para determinar el proceso de pronóstico eficientemente: 1. Paquetes estadísticos que incluyen análisis de regresión y otras técnicas que se utilizan con frecuencia en los pronósticos; y 2. Paquetes de pronóstico diseñados específicamente para aplicaciones de este tipo. Paquetes de cómputo para pronóstico. En la década pasada el desarrollo que ha tenido el mayor impacto en el pronóstico es el de los paquetes de programas de cómputo diseñados específicamente para tratar en forma directa diferentes métodos de pronóstico. Se han desarrollado cientos de paquetes estadísticos y de pronóstico tanto para macro como para microcomputadoras o lap-tops. Los administradores con PCs sobre sus escritorios y el conocimiento de técnicas de pronóstico, ya no dependen de un equipo de trabajo para realizar sus pronósticos. Los administradores modernos están aprovechando la ventaja de la facilidad y disponibilidad de métodos complejos de pronóstico que proporcionan las computadoras personales. A continuación, se presentan algunos paquetes de cómputo más comerciales que son utilizados para el cálculo de series de tiempo Minitab:. Eviews Statistical Package for the Social Sciences (SPSS): Statistical Análisis System (SAS): Autobox 3.0 de Automatic Forecasting Systems, Inc. Business and economic forecasting: decision support system software de John Wiley. Easy forecaster plus 1 o 2 Del Institute of Business Forecasting. Cast de Scientific System, Inc. Micro – BJ de Stratix Forecasting de Hewlett Packard MICCROFIT3 de Oxford University Press. Forecast Pro de Business Forecast Systems, Inc

Page 53: Módulo I. Desarrollo de habilidades del pensamiento lógico ...prouniversitarios.org/site/recursos/material-de-apoyo/tecnologias-de... · Módulo I. Desarrollo de habilidades del

Descomposición 2.5.1 De series económicas 2.5.2 De componentes no observables 2.6 Estudio de series de tiempo múltiples 2.6.1 Modelos para series de tiempo múltiple

Hasta ahora, tratamos exclusivamente con modelos uniecuacionales, es decir, modelos en los cuales había una sola variable dependiente Y y una o más variables explicativas, las X. En tales modelos nos centramos en la estimación y/o la predicción del valor medio de Y condicional a los valores fi jos de las variables X. Por consiguiente, la relación causa-efecto en esos modelos iba de las X a Y. Pero en muchas situaciones la relación causa-efecto en un sentido, o unidireccional, no es relevante. Esto sucede cuando Y está determinada por las X y algunas X, a su vez, están determinadas por Y. En otras palabras, hay una relación en dos sentidos, o simultánea, entre Y y (algunas) X, que hace dudar del valor de la distinción entre variables dependientes y explicativas. Es mejor reunir un conjunto de variables que se determinen simultáneamente mediante el conjunto restante de variables: justo lo que se hace en los modelos de ecuaciones simultáneas. En tales modelos hay más de una ecuación: una para cada una de las variables mutuamente, o conjuntamente, dependientes o endógenas. Y, a diferencia de los modelos uniecuacionales, en los modelos de ecuaciones simultáneas no es posible estimar los parámetros de una ecuación aisladamente sin tener en cuenta la información proporcionada por las demás ecuaciones en el sistema. ¿Qué sucede si los parámetros de cada ecuación se estiman, por ejemplo, mediante el método de MCO, sin considerar las demás ecuaciones del sistema? Recuerde que un supuesto crucial del método de MCO es que las variables explicativas X son no estocásticas o, si lo son (aleatorias), están distribuidas independientemente del término de perturbación estocástico. Si ninguna de estas condiciones se cumple, entonces, como veremos más adelante, los estimadores de mínimos cuadrados no sólo son sesgados, sino también inconsistentes; es decir, a medida que el tamaño de la muestra aumenta indefinidamente, los estimadores no convergen hacia sus verdaderos valores (poblacionales). Así, en el siguiente sistema hipotético de ecuaciones,

donde Y1 y Y2 son variables mutuamente dependientes, o endógenas, X1, una variable exógena, y u1 y u2, los términos de perturbación estocástica, ambas variables Y1 y Y2 son estocásticas. Por consiguiente, a menos que se demuestre que la variable explicativa estocástica Y2 en está distribuida independientemente de u1 y que la variable explicativa estocástica Y1 en está distribuida independientemente de u2, la aplicación de MCO clásicos a estas ecuaciones generará estimaciones inconsistentes. Si se considera un modelo general de M ecuaciones con M variables endógenas, pueden adoptarse dos enfoques para estimar las ecuaciones estructurales, a saber: métodos uniecuacionales, también conocidos como métodos de información limitada, y métodos de sistemas, conocidos como métodos de información completa. En los métodos uniecuacionales que serán considerados en breve, cada ecuación en el sistema (de ecuaciones simultáneas) se estima individualmente, considerando las restricciones impuestas sobre ella (tales como la exclusión de algunas variables) sin preocuparse de las restricciones sobre las otras ecuaciones en el sistema; de ahí el nombre de métodos de información limitada. Por otra parte, en los métodos de sistemas, se estiman todas las ecuaciones en el modelo de manera simultánea, teniendo en cuenta las restricciones ocasionadas por la omisión o ausencia de algunas variables sobre dichas ecuaciones (recuerde que tales restricciones son esenciales para la identificación), de aquí el nombre métodos de información completa. Como ejemplo, considere el siguiente modelo de cuatro ecuaciones:

Page 54: Módulo I. Desarrollo de habilidades del pensamiento lógico ...prouniversitarios.org/site/recursos/material-de-apoyo/tecnologias-de... · Módulo I. Desarrollo de habilidades del

en donde las Y son las variables endógenas y las X son las variables exógenas. Si se está interesado en estimar, por ejemplo, la tercera ecuación, los métodos uniecuacionales considerarán solamente esta ecuación, observando que las variables Y2 y X3 están excluidas de ella. En los métodos de sistemas, por el contrario, se trata de estimar las cuatro ecuaciones simultáneamente, teniendo en cuenta todas las restricciones impuestas sobre las diversas ecuaciones del sistema. Para preservar el espíritu de los modelos de ecuaciones simultáneas, idealmente debería utilizarse el método de sistemas, tal como el método de máxima verosimilitud con información completa (MVIC). Sin embargo, en la práctica, tales métodos no son de uso frecuente por múltiples razones. Primero, la carga computacional es enorme. Métodos uniecuacionales, en el contexto de un sistema simultáneo: 1. Mínimos cuadrados ordinarios (MCO) 2. Mínimos cuadrados indirectos (MCI) 3. Mínimos cuadrados en dos etapas (MC2E) 2.6.2 Cointegración bivariada

Ya advertimos que la regresión de una serie de tiempo no estacionaria sobre otra no estacionaria puede causar una regresión espuria. Suponga que consideramos las series de tiempo LGCP y LIDP presentadas en la sección 2.3.3. Si somete estas series de manera individual a un análisis de raíz unitaria encontrará que ambas son I(1); es decir, contienen una tendencia estocástica. Es muy posible que las dos series compartan la misma tendencia común, por lo que la regresión de una sobre la otra no será necesariamente espuria. Para ser específicos, usaremos los datos de las series de tiempo económicas de Estados Unidos y ejecutaremos la siguiente regresión de LGCP sobre LIPD: LGCPt β1 + β2LIDPt + ut (e1) donde L significa logaritmo. β2 es la elasticidad del gasto de consumo personal real respecto del ingreso personal disponible real. Para efectos ilustrativos, le denominaremos elasticidad del consumo. Esto se expresa como: ut= LGCPt − β1 − β2LIDPt (e2) Suponga que ahora sometemos ut a un análisis de raíz unitaria y descubrimos que es estacionaria, es decir, I(0). Ésta es una situación interesante, pues LGCPt y LIDPt son individualmente I(1), es decir, tienen tendencias estocásticas, y su combinación lineal (e2) es I(0). Se puede decir que la combinación lineal cancela las tendencias estocásticas de las dos series. Si consideramos el consumo y el ingreso como dos variables I(1), el ahorro (definido como ingreso menos consumo) puede ser I(0). Como resultado, una regresión del consumo sobre el ingreso, como en (e1), puede ser significativa (es decir, no espuria). En este caso decimos que las dos variables están cointegradas. En términos económicos, dos variables serán cointegradas si existe una relación de largo plazo, o de equilibrio, entre ambas. La teoría económica a menudo se expresa en términos de equilibrio, como la teoría monetaria cuantitativa de Fisher o la teoría de la paridad del poder adquisitivo (PPA), por mencionar algunas. En resumen, en tanto se verifique que los residuos de las regresiones como (e1) son I(0) o estacionarios, la metodología tradicional de regresión (inclusive las pruebas t y F) aprendida hasta ahora es aplicable a las series de tiempo (no estacionarias). La contribución valiosa de los conceptos de raíz unitaria, cointegración, etc., es que obligan a determinar si los residuos de la regresión son estacionarios. Como observa Granger: “Una prueba para la cointegración puede considerarse como una preprueba para evitar las situaciones de regresiones espurias”. En el lenguaje de la teoría de la cointegración, una regresión como (e1) se conoce como regresión cointegrante, y el parámetro de pendiente β2 como parámetro cointegrante. El concepto de cointegración puede extenderse a un modelo de regresión que contenga k regresoras, en cuyo caso se tendrán k parámetros cointegrantes.

Page 55: Módulo I. Desarrollo de habilidades del pensamiento lógico ...prouniversitarios.org/site/recursos/material-de-apoyo/tecnologias-de... · Módulo I. Desarrollo de habilidades del

2.6.3 Vectores autoregresivos

Utilizamos un modelo del tipo vector autoregresivo (VAR) cuando queremos caracterizar las interacciones simultáneas entre un grupo de variable. Un VAR es un modelo de ecuaciones simultáneas formado por un sistema de ecuaciones de forma reducida sin restringir. Que sean ecuaciones de forma reducida quiere decir que los valores contemporáneos de las variables del modelo no aparecen como variables explicativas en ninguna de las ecuaciones. Por el contrario, el conjunto de variables explicativas de cada ecuación está constituido por un bloque de retardos de cada una de las variables del modelo. Que sean ecuaciones no restringidas signi.ca que aparece en cada una de ellas el mismo grupo de variables explicativas. Pueden incluirse también como variables explicativas algunas variables de naturaleza determinista, como una posible tendencia temporal, variables ficticias estacionales, o una variable ficticia de tipo impulso o escalón, que sirve para llevar a cabo un análisis de intervención en el sistema. Por último, podría incluirse como explicativa una variable, incluso en valor contemporáneo, que pueda considerarse exógena respecto a las variables que integran el modelo VAR. El modelo VAR es muy útil cuando existe evidencia de simultaneidad entre un grupo de variables, y que sus relaciones se transmiten a lo largo de un determinado número de períodos. Al no imponer ninguna restricción sobre la versión estructural del modelo, no se incurre en los errores de especificación que dichas restricciones pudieran causar al ejercicio empírico. De hecho, la principal motivación detrás de los modelos VAR es la dificultad en identificar variables como exógenas, como es preciso hacer para identificar un modelo de ecuaciones simultáneas. 2.6.4 Causalidad de Granger

Un contraste especialmente interesante es el conoce como de causalidad en el sentido de Granger: supongamos que estamos explicando el comportamiento de una variable y utilizando su propio pasado. Se dice que una variable z no causa a la variable y si al añadir el pasado de z a la ecuación anterior no añade capacidad explicativa. El contraste consiste en analizar la significación estadística del bloque de retardos de z en la ecuación mencionada, y la hipótesis nula es que la variable z no causa, en el sentido de Granger, a la variable y. En realidad, la propuesta inicial de Granger hacía referencia a que la predicción de y basada en el pasado de las dos variables y y z, sea estrictamente mejor (es decir, con menos error) que la predicción de y basada exclusivamente en su propio pasado. Así, se diría que la variable z no causa a la variable y si se tiene,

Sin embargo, esta propiedad no suele analizarse utilizando predicciones. Se contrasta exclusivamente la significación del bloque de retardos de z en la ecuación de y; y se supone que si dicho bloque de variables es significativo, contribuirá a mejorar la predicción de la variable y: Esta manera de proceder se basa en que, analíticamente, es evidente que la presencia del bloque de retardos de z en la ecuación de y hace que la esperanza de y condicional en el pasado de las dos variables, y y z; sea distinta de la esperanza de y condicional en su propio pasado exclusivamente, si bien esta propiedad teórica no siempre se manifiesta en resultados prácticos, y es bien sabido que un buen ajuste no necesariamente conduce a una buena predicción. El contraste puede llevarse a cabo utilizando el estadístico F habitual en el contraste de significación de un bloque de variables, o mediante el estadístico de razón de verosimilitudes anterior. Con más de dos variables, existen muchos posibles contrastes de causalidad y en algunos casos, el estadístico de razón de verosimilitudes puede resultar más útil que el estadístico F, al permitir contrastar la exclusión de algún bloque de retardos en varias ecuaciones simultáneamente. Asimismo, el contraste de causalidad o, lo que es lo mismo, el contraste de significación de un bloque de retardos puede llevarse a cabo mediante un estadístico de razón de verosimilitudes, en el que el modelo restringido excluye un grupo de retardos de una ecuación.

Page 56: Módulo I. Desarrollo de habilidades del pensamiento lógico ...prouniversitarios.org/site/recursos/material-de-apoyo/tecnologias-de... · Módulo I. Desarrollo de habilidades del

2.6.5 Descomposición de la varianza del pronóstico

Consideremos la representación MA de un VAR en función de las innovaciones estructurales para un valor futuro del vector de variables:

A partir de esta expresión, las predicciones de las variables y1; y2; a horizonte m serían:

que, como vemos, depende de la realización de las perturbaciones que se produzcan en ambas innovaciones desde t + 1 hasta t + m: El tamaño del error de predicción viene indicado por su varianza:

que, inevitablemente, aumentan con el horizonte de predicción. La expresión anterior nos permite descomponer la varianza del error de predicción en dos fuentes, según tenga a e1 o a e2 como causa. Con ello, estamos examinando el inevitable error de predicción en cada variable a un determinado horizonte, y atribuyéndolo a la incertidumbre acerca de la evolución futura en cada una de las variables. Es, por tanto, una manera de hacer inferencia acerca de las relaciones intertemporales entre la variables que componen el vector y: Para ello, se expresan los componentes de cada varianza en términos porcentuales,

Si una variable es prácticamente exógena respecto a las demás, entonces explicará casi el 100% de la varianza de su error de predicción a todos los horizontes posibles. Esto es lo más habitual a horizontes cortos, mientras que a horizontes largos, otras variables pueden ir explicando un cierto porcentaje de la varianza del error de predicción. La descomposición de la varianza está sujeta al mismo problema de identificación que vimos antes para las funciones de respuesta al impulso, siendo necesario introducir alguna restricción como las consideradas en la sección anterior. Nuevamente, si la correlación entre las innovaciones del VAR es muy pequeña, la ordenación que se haga de las variables del vector y o, lo que es lo mismo, las restricciones de exclusión de valores contemporáneos que se introduzcan serán irrelevantes. En general, sin embargo, tales restricciones condicionan muy significativamente la descomposición de la varianza resultante. De hecho, con las restricciones de identificación de la sección anterior, e2 explica el 100% de la varianza del error de predicción un período hacia adelante en la variable y2: Si, en vez de dicha restricción, excluyéramos y2t de la primera ecuación, entonces e1 explicaría el 100% de la varianza del error de predicción un período hacia adelante en la variable y1.

Page 57: Módulo I. Desarrollo de habilidades del pensamiento lógico ...prouniversitarios.org/site/recursos/material-de-apoyo/tecnologias-de... · Módulo I. Desarrollo de habilidades del

2.6.6 Análisis de cointegración

La cointegración entre variables no lleva añadida ninguna interpretaciónconcreta en términos de causalidad entre dichas variables. De hecho, como la relación de cointegracion puede normalizarse de distintas maneras, puede presentarse una apariencia de causalidad en cualquiera de las dos direcciones. El modelo de corrección de error muestra que, en presencia de cointegración, existe importante causalidad entre ambas variables, en principio, con carácter bidireccional. Sólo si algunos de los coeficientes del modelo MCE resultan ser estadísticamente no significativos, podría hablarse de causalidad unidireccional. Si dos variables están cointegradas, al menos una de ellas causa a la otra; sin embargo, ello podría también reflejar el efecto común de una tercera variable, no considerada en el modelo. Sin embargo, la ausencia de causalidad en un sistema cointegrado implica que una de las variables no reacciona a variaciones en la otra. Esto significa que los retardos de la segunda no aparecen en la ecuación de la primera ni en la forma de diferencias, ni tampoco a través del término de corrección del error. Por ejemplo, al trabajar con datos de precios de contado y del futuro sobre un determinado activo financiero, es habitual hallar un mayor número de retardos del precio del futuro en la ecuación del contado, que viceversa, lo que sugiere que los mercados de derivados (en este caso, de futuros), incorporan la nueva información más rápidamente que los mercados de contado, por lo que los últimos parecen responder a fluctuaciones en los primeros. En este tipo de ejemplos, en ocasiones el término de corrección de error resulta no significativo en la ecuación de precios del mercado de contado. 2.7. Estadística bayesiana 2.7.1 Problema de decisión

La teoría bayesiana plantea la solución a un problema estadístico desde el punto de vista subjetivo de la probabilidad, según el cual, la probabilidad que un estadístico asigna a uno de los posibles resultados de un proceso, representa su propio juicio sobre la verosimilitud de que se tenga el resultado. Este juicio estará basado en opiniones e información acerca del proceso. La información que el estadístico tiene sobre la verosimilitud de los distintos eventos reelevantes al problema de decisión, debe ser cuantificada a través de una medida de probabilidad Θ. A un problema específico se le puede asignar cualquier tipo de distribución a priori o inicial, ya que finalmente al actualizar la información a priori que se tenga acerca del parámetro, por medio del teorema de Bayes, se estará actualizando la distribución a posteriori del parámetro. Cuando un investigador tiene un conocimiento previo a un problema, este puede cuantificarse en un modelo de probabilidad. Si los juicios de una persona sobre la verosimilitud relativa a ciertas combinaciones de resultados satisfacen ciertas condiciones de consistencia, se puede decir que sus probabilidades subjetivas se determinan de manera única. La diferencia fundamental entre el modelo clásico y el bayesiano es que en este último los parámetros son considerados aleatorios, por lo que pueden ser cuantificados en términos probabilísticos. Por otro lado, es importante resaltar que la inferencia bayesiana se basa en probabilidades asociadas con diferentes valores del parámetro θ que podrían haber dado lugar a la muestra x que se observó. Por el contrario, la inferencia clásica se basa en probabilidades asociadas con las diferentes muestras x que se podrían observar para algún valor fijo, pero desconocido del parámetro θ. En relación con la obtención de estimaciones puntuales para los parámetros poblacionales, en el caso del modelo clásico, la estimación se interpreta como el valor de θ, que hace más probable haber obtenido la muestra observada, mientras en el modelo bayesiano, la estimación sera el valor de θ que, puesto que se ha observado x, sea mas verosímil o más creíble. Las principales características que se le pueden atribuir a la teoría bayesiana son las siguientes: 1. Proporciona una manera satisfactoria de introducir explícitamente y de dar seguimiento a los supuestos sobre el conocimiento inicial o a posteriori. 2. La inferencia bayesiana no presenta problemas en la selección de estimadores y de intervalos de credibilidad. 3. El teorema de Bayes permite la actualización continua de la información sobre los parámetros de la distribución conforme se generan más observaciones. 4. A diferencia de la inferencia clásica, la bayesiana no requiere de la evaluación de las propiedades de los estimadores obtenidos en un muestreo sucesivo.

Page 58: Módulo I. Desarrollo de habilidades del pensamiento lógico ...prouniversitarios.org/site/recursos/material-de-apoyo/tecnologias-de... · Módulo I. Desarrollo de habilidades del

5. La probabilidad de un evento está dada por el grado de confianza o creencia que tiene un individuo sobre la ocurrencia del evento. La principal objeción es que las conclusiones dependen de la selección específica de la aproximación inicial. Aunque para otros esto es lo interesante de la aproximación bayesiana. Sin embargo, se debe señalar que inclusive en inferencia clásica y además en investigaciones científicas, por lo general estos conocimientos iniciales son útilizados implícitamente. Cabe recalcar que los métodos bayesianos pueden ser aplicados a problemas que han sido inaccesibles a la teoría frecuentista tradicional. 2.7.2 Decisiones Estadísticas

El término “robustez” se utiliza, a menudo en Estadística para hacer referencia a ciertas características deseables de los procesos estadísticos. Se dice que un proceso es robusto respecto de las desviaciones de los supuestos del modelo, cuando el proceso continúa trabajando bien, aún cuando, en mayor o menor extensión, los supuestos no se mantienen. Tales supuestos, a menudo adoptados informáticamente, podrían ser por ejemplo, que una distribución subyacente sea Normal o que las observaciones posean una varianza constante. En el caso de contrastación de hipótesis estadísticas, un test robusto evita la dificultad de que una decisión (en este caso entre dos hipótesis) se mantenga como muy inestable a la manera de un supuesto particular. Los bayesianos dan al término un significado más específico. Una aplicación bayesiana es robusta si la distribución posterior de un parámetro desconocido no es significativamente afectada por la elección de la distribución anterior o de la forma del modelo elegido para la generación de los datos. En cualquiera de las dos aproximaciones la incertidumbre, si bien limitada al conocimiento de si los supuestos específicos, en efecto, se mantienen, subyace claramente detrás de la necesidad de disponer y aclarar el concepto en sí mismo. Esto no significa, por supuesto, que debamos estudiar otros tipos de incertidumbre, o la secuencialidad de las decisiones. 2.7.3 Análisis bayesiano de modelos de regresión y series de tiempo

El análisis de regresión es una técnica estadística para investigar y modelar la relación entre variables. Las aplicaciones de la regresión se encuentran numerosos campos de la investigación como en ingeniería, ciencias físicas, químicas, biológicas etc. De hecho es una de las técnicas estadísticas más utilizadas. Los modelos de regresión son empleados para: Descripción de datos. Estimación de Parámetros. Predicción y estimación. Control. Regresión lineal simple

El modelo de regresión lineal simple, es un modelo con un regresor único, x, que tiene una relación con una respuesta, y, la cual se supone es una línea recta. Este modelo es

donde β0 la constante interceptora y β1 la pendiente, son constantes desconocidas, y ϵ es un error aleatorio. La componente aleatoria se asume que tiene media cero y varianza constante desconocida, adicionalmente que no están correlacionadas. Es conveniente considerar que el regresor x está medido con un error insignificante, mientras que la respuesta y es una variable aleatoria. Esto es, y tiene una distribución de probabilidad en cada posible valor de x. La esperanza de la distribución es:

Page 59: Módulo I. Desarrollo de habilidades del pensamiento lógico ...prouniversitarios.org/site/recursos/material-de-apoyo/tecnologias-de... · Módulo I. Desarrollo de habilidades del

Observe que la esperanza de y es una función lineal de x pero la varianza de y no depende del valor de x. Además, dado que los errores son no correlacionados, las respuestas también son no correlacionadas. La pendiente β1 es el cambio de la esperanza de la distribución de y producida por un cambio unitario en x. Si el rango de los valores sobre x incluye al cero, entonces la intersección β0 es el promedio de la distribución de la respuesta y cuando x = 0, en caso contrario, β0 no tiene interpretación práctica. Los parámetros β0 y β1 al ser constantes desconocidas pueden estimarse, empleando una muestra de datos. Uno de los métodos más usados para estimar dichos valores es el de mínimos cuadrados que no es más que la suma mínima de los cuadrados de las diferencias entre observaciones yi y la línea recta. A saber, los estimadores por mínimos cuadrados de la intercepción y la pendiente son:

Estimación mediante la función de verosimilitud

Page 60: Módulo I. Desarrollo de habilidades del pensamiento lógico ...prouniversitarios.org/site/recursos/material-de-apoyo/tecnologias-de... · Módulo I. Desarrollo de habilidades del
Page 61: Módulo I. Desarrollo de habilidades del pensamiento lógico ...prouniversitarios.org/site/recursos/material-de-apoyo/tecnologias-de... · Módulo I. Desarrollo de habilidades del

Entonces para futuras derivaciones, la verosimilitud se escribirá como:

Page 62: Módulo I. Desarrollo de habilidades del pensamiento lógico ...prouniversitarios.org/site/recursos/material-de-apoyo/tecnologias-de... · Módulo I. Desarrollo de habilidades del

Módulo III. Computación y desarrollo tecnológico Arquitectura informática 3.1.1 Principios de arquitectura computacional

FUNDAMENTOS DE LA ARQUITECTURA COMPUTACIONAL Introducción

En la actualidad, el término computadora es habitual y se encuentra presente directa o indirectamente en todas las actividades del ser humano. Es por ello que para aprovechar el potencial de la computadora se requiere conocer los fundamentos que le rigen, así como las partes que la integran Concepto de arquitectura en el entorno informático Lo que se denomina hardware de computadores consiste en circuitos electrónicos, visualizadores, medios de almacenamiento magnéticos y ópticos, equipos electromecánicos y dispositivos de comunicación. Por lo que la arquitectura de computadoras abarca la especificación del repertorio de instrucciones y las unidades hardware que implementan las instrucciones. Definición de computadora

Un computador o computadora es una máquina calculadora electrónica rápida que acepta como entrada información digitalizada, la procesa de acuerdo con una lista de instrucciones almacenada internamente y produce la información de salida resultante. A la lista de instrucciones se le conoce como programa y el medio de almacenamiento interno memoria del computador. Hay muchos tipos de computadores, varían en tamaño, costo, poder de cómputo y uso. El computador personal es el más común, el cual encuentra amplia aplicación en hogares, centros de enseñanza y oficinas de negocios. Se encuentra conformado por unidades de procesamiento y de almacenamiento, unidades de salida de visualización y de salida de audio, así como de un teclado, lo que permite su fácil ubicación sobre una mesa en el hogar o en la oficina. Los medios de almacenamiento incluyen discos duros, CD-ROM, discos duros externos y memorias. Los computadores portátiles son la versión compacta con todos los componentes empaquetados. Las estaciones de trabajo con capacidad de entrada/salida de gráficos de alta resolución, aunque con las dimensiones de un computador de sobremesa, se caracterizan por su rapidez de procesamiento; se usan frecuentemente en aplicaciones de ingeniería, especialmente para trabajo de diseño interactivo. Asimismo, se encuentran los sistemas de empresa o macrocomputadores, los cuales son ocupados para el procesamiento de datos de negocios en compañías de tamaño mediano a grande que requieren bastante poder de computación y capacidad de almacenamiento que la ofrecida por las estaciones de trabajo. Los servidores (son una computadora que, formando parte de una red, provee servicios a otras computadoras denominadas clientes), contienen unidades de almacenamiento para bases de datos de tamaño mediano, y son capaces de gestionar un gran volumen de peticiones de acceso a esos datos. En la mayoría de los casos los servidores son accesibles a las comunidades educativas, empresariales y particulares. Las peticiones y las respuestas se transportan habitualmente a través de las instalaciones de internet. Internet y sus servidores asociados se han convertido en la fuente dominante mundial de toda clase de información. Las instalaciones de comunicación de internet consisten en una compleja estructura de enlaces principales de fibra óptica de alta velocidad interconectados con cable de difusión y conexiones telefónicas a escuelas, negocios y hogares. Por otro lado, están los supercomputadores que se utilizan para cálculos numéricos a gran escala y requeridos en aplicaciones como predicción del tiempo o diseño y simulación de aeronaves. En sistemas empresariales, servidores y supercomputadores, las unidades funcionales, incluyendo múltiples procesadores, pueden consistir en varias unidades separadas y frecuentemente grandes.

Page 63: Módulo I. Desarrollo de habilidades del pensamiento lógico ...prouniversitarios.org/site/recursos/material-de-apoyo/tecnologias-de... · Módulo I. Desarrollo de habilidades del

ORGANIZACIÓN FÍSICA DE UNA COMPUTADORA Dispositivos de entrada

Norton Peter en su libro Introducción a la computación señala que “a principios de la década de 1980, cuando las computadoras personales comenzaron a ganar popularidad, muchos futuristas y analistas hicieron predicciones audaces acerca de la importancia de la computadora para la sociedad. Algunas personas incluso predijeron que, para el año 2000, en ningún hogar faltaría una computadora”. La computadora se conforma por dos elementos principales: hardware y software. El hardware se refiere a la parte física de la computadora: teclado, gabinete, circuitos, cables, discos duros, impresoras, monitores, etc. El funcionamiento del hardware depende del software (programas). En tanto que software, Villarreal lo define como el conjunto de instrucciones que dirigen al hardware. Asimismo, dice que es un conjunto de instrucciones que realizan una tarea específica denominada programa. El dispositivo de entrada se define como la parte del hardware que permite al usuario introducir información a la computadora. Por ejemplo: teclado, ratón, lector óptico, escáner, guantes (para realidad virtual), cámaras digitales de video, etc. El dispositivo de entrada más común es el teclado, el cual acepta letras, números y comandos del usuario. Además, en forma adicional se emplea el ratón, el cual permite dar comandos moviendo el ratón sobre una superficie plana y oprimiendo sus botones. Algunos otros dispositivos de entrada son la palanca de juegos (joystick), escáner, cámaras digitales y micrófonos. Dispositivos de salida

Es la parte que permite a la computadora comunicarse con el usuario. Ejemplos: monitor, graficador, bocinas, impresora, etc. Los dispositivos de salida devuelven los datos procesados al usuario. El término genérico dispositivo se refiere a cualquier pieza de hardware. La función de un dispositivo de salida es presentar datos procesados al usuario. Los dispositivos de salida más comunes son la pantalla de visualización, conocida como monitor y la impresora. Existen algunos tipos de hardware que pueden actuar tanto como dispositivos de entrada como de salida. Un ejemplo es la pantalla sensible al tacto, un tipo e monitor que muestra texto o íconos, los cuales pueden tocarse. Las pantallas sensibles al tacto permiten a los usuarios localizar con rapidez artículos o buscar en catálogos. Los tipos más comunes de dispositivos que pueden ser de entrada y salida son los de comunicación, los cuales conectan una computadora con otra, proceso conocido como conectividad en redes. Entre las muchas clases de dispositivos de comunicación, los más comunes son los módems, los cuales permiten a las computadoras comunicarse a través de líneas telefónicas, y las tarjetas de interfaz de red (network interface cards; NIC), las cuales permiten a los usuarios conectar un grupo de computadoras para compartir datos y dispositivos. Memoria interna y memoria externa La computadora, para ser realmente útil, necesita un lugar para mantener archivos de programas y datos relacionados cuando no se están usando. El propósito del almacenamiento es guardar datos. Existen diferencias entre el almacenamiento y la memoria. Los contenidos son conservados en el almacenamiento cuando la computadora se apaga, mientras que los programas o datos que se ponen en la memoria se pierden cuando se apaga la computadora. El medio de almacenamiento más común es el disco magnético. Códigos de texto

Al principio de la historia de la computación, los programadores se dieron cuenta de que necesitaban un código estándar, un sistema en el que todos pudieran estar de acuerdo con respecto a qué números representarían las letras del alfabeto, los signos de puntuación y otros símbolos. EBCDIC, ASCII y Unicode son tres de los sistemas más populares que fueron inventados. EBCDIC. El sistema BCD (Código Decimal Binario: Binary Coded Decimal), definido por IBM, para una de sus primeras computadoras fue uno de los primeros sistemas completos para representar símbolos con bits. Los códigos BCD constaban de códigos de seis bits, los cuales permiten un máximo de 64 símbolos posibles. Las computadoras BCD sólo podían trabajar con letras mayúsculas y con muy pocos otros símbolos. Por estas situaciones este sistema tuvo una vida corta. Graficas computacionales En este apartado se pretende, describir brevemente las herramientas de software gráfico más utilizados del mercado del campo de la ingeniería.

Page 64: Módulo I. Desarrollo de habilidades del pensamiento lógico ...prouniversitarios.org/site/recursos/material-de-apoyo/tecnologias-de... · Módulo I. Desarrollo de habilidades del

3.2.1 Diseño de una herramienta gráfica

Los primeros software de diseño asistido por ordenador (CAD - Computer Aided Design) vieron la luz en los años 50, pero se debe esperar hasta 1970 para que se hicieran más robustos, fiables y, por lo tanto, útiles. Este tipo de herramienta dio sus primeros pasos de la mano de sectores como la automoción y la aeronáutica. Se debe entender aquí que supusieron una gran revolución, ya que la reducción de los costes de diseño, ensayos y pruebas de todo tipo es altísima. Con la evolución de la informática este tipo de software se hizo cada vez más fuerte hasta llegar a hacerse imprescindible, de ahí el afán de las grandes empresas por crear herramientas cada vez más completas y revolucionarias. En esta línea surgen otros complementos como la fabricación asistida por ordenador (CAM - Computer Aided Manufacturing) o la Ingeniería asistida por ordenador (CAE - Computer Aided Engineering). A continuación se añade la descripción de cada uno de los software que se ha considerado relevante. SIEMENS NX

NX, también conocido como Siemens NX o simplemente Unigraphics o U-G, es un paquete de software 71 CAD/CAM/CAE desarrollado por la compañía Siemens PLM Software (una unidad de negocios de la división de Siemens Industry Automation). Cuenta con avanzadas herramientas y tecnologías de diseño, que le permiten simplificar y agilizar el proceso de desarrollo de productos. A diferencia de las soluciones empresariales cerradas y exclusivamente CAD, NX ofrece el más alto nivel de integración entre las diversas disciplinas de desarrollo en un entorno abierto y de colaboración. Sus usos, entre otros, son los siguientes: Diseño (modelado paramétrico y directo de sólidos/superficies) Análisis para ingeniería (estático, dinámico, electromagnético y térmico usando el método de elementos finitos, y análisis de fluidos usando el método de volúmenes finitos. Manufactura digital para la industria de la maquinaria. Aunque es muy similar a CATIA (es el principal competidor en la industria), todavía es menos conocido y usado, y en la industria aeroespacial sigue siendo éste bastante más empleado (20).

AUTOCAD

Es uno de los programas más usados en arquitectura e ingeniería, siendo el líder indiscutible para el modelado de estructuras y planos. Usa un sistema de capas, lo que permite al diseñador una muy buena organización de los distintos elementos que componen el plano o la pieza. Por otro lado, trabaja con el uso de imágenes de tipo vectorial, aunque también puede importar otro tipo de archivos como mapas de bits. Aunque fue concebido para la creación de planos y es ésta la especialidad del programa, las versiones actuales permiten el modelado sólido en tres dimensiones, siendo este modelado no paramétrico.

Page 65: Módulo I. Desarrollo de habilidades del pensamiento lógico ...prouniversitarios.org/site/recursos/material-de-apoyo/tecnologias-de... · Módulo I. Desarrollo de habilidades del

AUTODESK INVENTOR

Software producido también por la empresa Autodesk que surge por la necesidad de la compañía de competir en el mercado con distintos software de modelado paramétrico que habían irrumpido con fuerza en el ámbito de la ingeniería y el diseño. Así pues, el modelado paramétrico permite modelar la geometría, dimensión y material de forma que si se alteran las dimensiones, la geometría se actualiza automáticamente guardando la misma proporción. El uso principal es la creación de ensamblajes a partir de la unión de piezas u otros ensamblajes. Se forman imponiendo restricciones entre superficies, bordes, planos, puntos y ejes para agregar una pieza o sub-ensamblaje a otro. El diseño modular descrito permite poder recrear conjuntos grandes y complejos, siendo el fundamento de las recreaciones 3D de los distintos programas que se usan actualmente. Si bien es verdad que Autodesk Inventor se incorporó al mercado más tarde que sus competidores, va incorporando con rapidez distintas funciones que poseían estos, situándose en primera línea de competitividad.

Page 66: Módulo I. Desarrollo de habilidades del pensamiento lógico ...prouniversitarios.org/site/recursos/material-de-apoyo/tecnologias-de... · Módulo I. Desarrollo de habilidades del

SOLIDWORKS

Este software de modelado mecánico tridimensional es desarrollado por la empresa SolidWorks Corp., filial de la francesa Dassault Systèmes, S.A. SolidWorks Corp. fue fundada en 1993 por Jon Hirschtick y lanzó el producto SolidWorks 95 en el año 1995. Dos años más tarde, en 1997, Dassault Systèmes adquirió la compañía. SolidWorks fue creado para el sistema operativo Microsoft Windows con intención de hacer la tecnología CAD accesible sin necesidad de software y hardware caros para funcionar. Destaca por ser muy intuitivo y fácil de manejar, permitiendo plasmar ideas de forma rápida sin necesidad de realizar operaciones complejas y lentas. Las principales características que hacen de este programa una herramienta versátil y precisa es su capacidad de ser asociativo, variacional y paramétrico de forma bidireccional con todas sus aplicaciones, siendo pionero en dicho desarrollo paramétrico. Además usa el Gestor de diseño (FeatureManager) que facilita la modificación rápida de operaciones tridimensionales y croquis de operación sin necesidad de rehacer los diseños plasmados en el resto de sus documentos asociados. El programa permite modelar piezas y conjuntos y extraer de ellos tantos planos técnicos como otro tipo de información necesaria para la producción, todo ello de forma automatizada. Junto con las herramientas de diseño de Pieza, Ensamblajes y Dibujo, SolidWorks incluye Herramientas de productividad, de Gestión de proyectos, de Presentación y de Análisis y Simulación que lo hace ser muy competitivo dentro del mercado.

SOLIDEDGE

Se trata también de un software de modelado paramétrico en tres dimensiones desarrollado inicialmente por la empresa estadounidense Intergraph y actualmente perteneciente a la alemana Siemens AG, que sustituyó el núcleo ACIS por Parasolid, motor geométrico de otras herramientas CADs como SolidWorks o IronCAD. Usado por ingenieros principalmente, permite el modelado piezas de distintos materiales, doblado de chapas, ensamblaje, así como funciones de dibujo en plano entre otras funciones. Al ser el software de diseño 3D de Siemens AG y dada la implantación del mismo en todas las líneas de producción e ingeniería de la empresa, ha sufrido importantes mejoras, destacando entre ellas la compatibilidad del software con archivos de otros programas, pudiendo traducir los mismos y operar con ellos mediante Solid Edge.

Page 67: Módulo I. Desarrollo de habilidades del pensamiento lógico ...prouniversitarios.org/site/recursos/material-de-apoyo/tecnologias-de... · Módulo I. Desarrollo de habilidades del

CATIA V5

Fue desarrollado por la empresa francesa Dassault Systèmes y distribuido por IBM. El programa sirve para prestar apoyo en toda la línea de producción, desde la concepción del diseño hasta el análisis de productos. Está disponible para Microsoft Windows, Solaris, IRIX y HP-UX. La principal peculiaridad de CATIA es que provee una arquitectura abierta para el desarrollo de aplicaciones y para personalizar el programa. CATIA se desarrolló inicialmente para la industria aeronáutica si bien desde los últimos años se ha integrado en la industria del automóvil para el diseño y desarrollo de componentes de carrocería. Concretamente empresas como el Grupo VW (Volkswagen, Audi, SEAT y Škoda), BMW, Renault, Peugeot, Daimler AG, Chrysler, Smart y Porsche hacen un amplio uso del programa. El sector de la construcción también ha incorporado el uso del software para desarrollar edificios de gran complejidad. El Museo Guggenheim Bilbao fue un hito arquitectónico que ejemplifica el uso de esta tecnología. Por tanto, es capaz de trabajar con superficies complicadas, siendo el programa puntero para ello.

¿Por qué CATIA V5?

Una vez descritas todas estas herramientas de diseño solo falta explicar por qué recomendar CATIA V5. La decisión atiende a varias razones: Este programa aúna las tres disciplinas que se explicaron anteriormente: CAD/CAM/CAE. Es uno de los programas más potentes del mercado, por lo que suple con creces las necesidades de este modelado, no siendo necesaria la utilización de ningún otro software de manera complementaria. Aunque su mayor campo de aplicación sea el de la aeronáutica, las posibilidades de esta herramienta son infinitas. Por último, este programa presenta diferentes versiones que han surgido desde que fue creado, satisfaciendo las necesidades del mercado e introduciendo mejoras.

Page 68: Módulo I. Desarrollo de habilidades del pensamiento lógico ...prouniversitarios.org/site/recursos/material-de-apoyo/tecnologias-de... · Módulo I. Desarrollo de habilidades del

3.2.2 Ilustración digital

Una buena ilustración no es solamente un buen dibujo. Una ilustración siempre tiene una función, generalmente, hace algo: contar una historia, vender un producto, describir un entorno, enseñar el funcionamiento de algo…… Como veremos, la ilustración, que se encuentra a caballo entre el Arte y el Diseño Gráfico, en base a su carácter funcional debe impresionar al espectador y provocarle un determinado tipo de respuesta emocional o intelectual, y es precisamente ese carácter funcional, uno de los aspectos que separa a la ilustración de la imagen artística, al menos en su origen, ya que hoy casi nadie dejaría de apreciar como obra de arte un cartel de Toulouse-Lautrec, o una ilustración de Gustavo Doré. Otro aspecto significativo es que la ilustración va asociada con la producción de imágenes que serán multiplicadas miles, o incluso millones de veces, por diferentes medios de impresión o visualización a través de libros, prensa, televisión, sistemas multimedia, Internet, etc. La naturaleza de este proceso involucra toda una serie de aspectos económicos. La persona o entidad que nos encarga un trabajo, nuestro cliente, tiene bien definidos los fines y funciones de su proyecto, en cuya realización, el ilustrador es un socio más. ¿Cualquiera puede ser ilustrador? En principio, sí. El ilustrador es, ante todo, un observador. Para dibujar algo es necesario conocerlo, aprender cómo es, y eso sólo es posible desde la observación y el análisis. Esa es la diferencia entre “mirar” y “ver”. A partir del vacío no surge nada. Nuestra capacidad de inventiva, trabaja a partir de lo que conocemos, hemos visto y vivido. Si nuestra mente posee una amplia “biblioteca” de imágenes y vivencias, nuestra imaginación o nuestra creatividad dispondrán de muchos recursos con los que trabajar. A su vez, debemos desarrollar nuestra “capacidad de reproducción”, es decir, la forma en que llevamos al papel o al monitor imágenes que surgen en nuestra cabeza. No basta con ser un magnífico observador, debemos ser capaces de materializar nuestros sueños, ideas y conceptos. Todo el que quiera expresarse con la imagen ha de aprender que el espacio visual se manifiesta como una estructura jerarquizada en la que no todos los elementos poseen la misma atracción visual, unos elementos llaman nuestra atención más que otros, y el ilustrador debe jugar con las reglas que rigen la percepción. Si comprendemos cómo funciona la percepción y de qué forma influyen los colores e imágenes en el espectador, estaremos en el camino de crear imágenes que consigan los objetivos para los que se encargaron. Vamos a aprender a ser ilustradores digitales. En realidad, eso sólo quiere decir que para realizar nuestras imágenes dispondremos de un medio como antes lo eran el lienzo, el papel o los pinceles: el ordenador, y nuestro trabajo podrá almacenarse en un sistema numérico y enviarse fácilmente a otro país, o al otro lado del mundo, en cuestión de segundos. Jamás, en la Historia de la civilización, las manifestaciones artísticas han tenido la posibilidad de difundirse de forma más amplia. Y debemos explotar esas condiciones. Esta herramienta tiene a su favor la infinidad de posibilidades que nos permite, pero tiene en contra su sofisticación y la variedad de programas con los que podemos trabajar. Por eso, vamos a dar unas indicaciones muy generales. El ordenador no es una herramienta que nos solucione los problemas técnicos y conceptuales de la ilustración, por lo que es imprescindible un conocimiento previo de las técnicas artísticas.

Page 69: Módulo I. Desarrollo de habilidades del pensamiento lógico ...prouniversitarios.org/site/recursos/material-de-apoyo/tecnologias-de... · Módulo I. Desarrollo de habilidades del

La imagen digital

Una imagen digital, generada con el ordenador u obtenida con un instrumento de captura como un escáner o una cámara, supone la traducción de los valores de color y luminosidad a un lenguaje binario de ceros y unos. Si tomamos una ilustración realizada por medios tradicionales y la observamos atentamente, podemos observar que está formada por una serie de manchas más o menos continuas o aleatorias, en función de la técnica utilizada, ya sea acuarela, lápiz de color, óleo, aerógrafo, etc. mientras que en una imagen digital, captada con una cámara y realizada con un programa de retoque de imagen como Photoshop, Gimp o Painter, ésta se compone de una serie de pequeños cuadrados alineados y del mismo tamaño, a cada uno de los cuales, llamamos píxel, que funcionan de forma semejante a las teselas que constituyen los mosaicos.

La palabra píxel es una contracción de picture (imagen) y element (elemento) y así se denominan estas unidades mínimas que constituyen una imagen digital. Cuanto más detalle y calidad posea la ilustración, más pequeños serán los píxeles y mayor será su número. Las principales ventajas de una imagen digital, además de su estabilidad, son su capacidad de corrección durante el proceso de trabajo, las posibilidades de control durante la impresión y el abaratamiento de costes de cara al trabajo de imprenta. Imagen vectorial e imagen de mapa de bits Como se puede trabajar con ambas al realizar una ilustración, debemos conocer las características de los dos tipos de imágenes digitales que hay: Imágenes vectoriales Imágenes de mapa de bits. Un vector es una ecuación matemática que define una forma, un vértice, un contorno, un relleno, etc. así, las imágenes vectoriales se obtienen mediante planos y líneas, de color plano o degradado, definidos matemáticamente. Para la generación de trazados y curvas se utiliza un método de descripción matemática ideado por Pierre Bézier en la década de 1970.

Page 70: Módulo I. Desarrollo de habilidades del pensamiento lógico ...prouniversitarios.org/site/recursos/material-de-apoyo/tecnologias-de... · Módulo I. Desarrollo de habilidades del

Cuando tenemos un conjunto de trazos se puede agrupar creando formas más complejas y formando objetos. A diferencia de una imagen de mapa de bits, una imagen vectorial puede ser escalada, rotada o deformada, sin que esto afecte en su definición y calidad.

En algunos formatos, las imágenes vectoriales pueden animarse sin que suponga un aumento excesivo en el tamaño del fichero. Las imágenes de mapa de bits, bitmap o rasterizadas, como las que se consiguen con una cámara, un escáner, y con algunos programas de ordenador como Photoshop o Painter, son las obtenidas por medio de una retícula formada por esas porciones de imagen que llamamos píxeles. Con ellas, no podemos variar caprichosamente el tamaño de la imagen, porque al tener cada píxel una dirección numerada y un valor, sí puede afectar a la calidad de la imagen.

Almacenar la fórmula que configura una imagen vectorial ocupa solamente unos pocos kilobytes (KB). Almacenar la ubicación y el valor de cada píxel en una imagen de mapa de bits, suele necesitar una cantidad de memoria mucho mayor. Tamaño de imagen y resolución

A diferencia del trabajo en la ilustración pictórica tradicional, en el que es recomendable que la imagen realizada sea alrededor de un 50% mayor que el tamaño al que se va a imprimir, al trabajar digitalmente, no se actúa así. El tamaño de la ilustración digital, cuando sea en mapa de bits, tendrá las mismas dimensiones que su impresión, aunque si por alguna razón no lo sabemos, más vale que sea un poco más grande a que se nos quede pequeña. Cuando la imagen que realicemos sea de mapa de bits, con lo que sí podremos “jugar”, es con la resolución, es decir, con la cantidad y tamaño de los píxeles que la componen. La resolución es un concepto propio de las imágenes de mapa de bits, que está relacionado con la cantidad de información que posee una ilustración digital y consiste en la densidad de píxeles que tiene la imagen, midiéndose en píxeles por pulgada, o por centímetro (1 pulgada = 2,54 cm.). Cuanto más pequeño sean los píxeles que constituyan la imagen, mayor definición y calidad tendrá nuestra ilustración.

Page 71: Módulo I. Desarrollo de habilidades del pensamiento lógico ...prouniversitarios.org/site/recursos/material-de-apoyo/tecnologias-de... · Módulo I. Desarrollo de habilidades del

Ambas ilustraciones tienen las mismas medidas: 5,8 x 3,76 cm. Pero la de la izquierda está a 200 ppp de resolución y la de la derecha a 50 ppp.

Debemos entender que la resolución tiene que estar de acuerdo con el medio y el dispositivo a través del cual vamos a mostrar nuestra ilustración: por imprenta, por la Web, por impresora, por televisión o por monitor, etc., pues cada medio tiene una resolución de salida propia y pasando ciertos límites, aunque la imagen tenga mayor resolución, nuestro ojo no la verá con mayor definición y calidad aunque sí más grande y ocupará más espacio en memoria (lo que se llama, tamaño de archivo). La resolución de salida es el número de puntos que un dispositivo es capaz de “representar” en una pulgada cuadrada. Si una impresora da 300 puntos por pulgada (300 ppp o dpi, dots per inch, en inglés) quiere decir que imprimirá 300 puntos en cada pulgada cuadrada. Una filmadora de 2400 ppp generará en cada pulgada cuadrada, 2400 espacios o divisiones, mientras que un monitor de televisión (que no sea de alta definición), producirá 72 ppp. Si nuestra ilustración se destina, por ejemplo, para un espacio Web, todo lo que pase de 72 ppp será una información desaprovechada, ocupará demasiado tamaño de archivo y hará que la imagen tarde más en descargarse, sin aportar ningún beneficio La resolución puede aumentarse usando software, como vemos en la imagen siguiente. Este proceso, llamado resolución interpolada, agrega píxeles a la imagen para aumentar el número total de los mismos. Para hacerlo, el software evalúa aquellos píxeles donde intercalará cada nuevo píxel para determinar cómo debería ser el nuevo. Es importante tener presente que la resolución interpolada no agrega nueva información a la imagen, esos píxeles nuevos se los “inventa” el programa y los integra, pero no son “información real”, al tiempo que hace el archivo más grande.

La ilustración superior está a una resolución de 100 ppp y ocupa 200KB, mientras que la inferior está interpolada a 300 ppp y ocupa 3 MB en formato Tiff.

Page 72: Módulo I. Desarrollo de habilidades del pensamiento lógico ...prouniversitarios.org/site/recursos/material-de-apoyo/tecnologias-de... · Módulo I. Desarrollo de habilidades del

En principio, cuando se capture una imagen que nos servirá como documentación con la cámara digital, siempre deberá tener una resolución óptica de 72 ppp. (Píxeles por pulgada). Esta resolución será buena para ver la imagen en la pantalla del televisor o incluso en nuestro monitor, pero si trabajamos directamente sobre ella y luego queremos llevar a imprimir nuestro trabajo, con esa resolución de 72 puntos sólo obtendremos una pésima calidad.

Para solucionarlo, se puede utilizar un programa de retoque como Gimp, Photoshop o Painter y al comenzar a dibujar ajustaremos el tamaño de imagen a 250 o 300 ppp. La profundidad de color

La resolución no es el único factor que determina la calidad de nuestras imágenes, igual de importante es la profundidad de color. Cuando se observa una escena real, o un cuadro, nuestros ojos pueden distinguir millones de colores. La profundidad de color de una imagen se identifica con el número de colores que posee. A nivel de imagen impresa, dada la reflectancia del papel, no percibimos una gran diferencia entre una imagen de 16 bits de profundidad de color y una de 24 bits, (y esta diferencia sólo se nota al visionar dos imágenes de dicha calidad, en un monitor de alta definición). Formatos de imagen

El formato es el sistema en que se organizan los datos que constituyen la ilustración digital para poder trabajarla, visualizarla, almacenarla o editarla. Las imágenes digitales se pueden guardar en más de una treintena de formatos diferentes, aunque los más utilizados son tres: TIFF, JPEG y GIF. Hoy en día, la gran mayoría de estos formatos son compatibles y convertibles por casi todos los programas de edición digital.

Page 73: Módulo I. Desarrollo de habilidades del pensamiento lógico ...prouniversitarios.org/site/recursos/material-de-apoyo/tecnologias-de... · Módulo I. Desarrollo de habilidades del

TIFF

Tag Image File Format (Formato de Archivo de Imagen Etiquetada), fue desarrollado por Aldus Corporation y Microsoft, siendo actualmente propiedad de Adobe. Es un formato de gran calidad, de los llamados “sin pérdida”, pues en los procesos de guardar y abrir, no se pierde ningún dato, con lo que la calidad de imagen se mantiene siempre intacta. Este formato es el que ocupa más espacio en disco, pero debemos usarlo para las ilustraciones con las que estemos trabajando y que tengamos que abrir a menudo. Algunas versiones son comprimidas usando LZW u otros métodos sin pérdidas (Con el algoritmo de compresión LZW, se puede reducir entre un cuarto y un tercio del tamaño de una imagen). JPEG

Joint Photographic Experts Group (Reunión de Grupo de Expertos Fotográficos) es el formato más utilizado. Suele usar las extensiones .JPEG o .JPG. También trabaja con una profundidad de color de 24 bits, siendo diseñado para hacer frente a las limitaciones calidad y tamaño de archivos de otros formatos. Es uno de los formatos llamados de compresión con pérdida, ya que, cada vez que se guarda la ilustración tras una sesión de trabajo, se comprime en función del nivel asignado y aunque, generalmente, esta pérdida de calidad es imperceptible al ojo humano, sí se pierden datos, especialmente si necesitamos varias sesiones y abrimos y guardamos la ilustración, repetidamente. La ventaja es que los archivos ocupan mucho menos espacio y, en consecuencia, podemos trabajar al tiempo con bastantes más imágenes sin que se ralentice mucho el ordenador. Así mismo, al reducirse el tamaño del archivo se mejora notablemente la velocidad de bajada cuando las imágenes se editan en la Web o se transmiten por correo electrónico. Los programas actuales permiten elegir diferentes niveles de compresión a la hora de guardar las imágenes. La configuración JPEG de mayor calidad y menor compresión ofrece una calidad muy ligeramente inferior a TIFF y no presenta los problemas de los archivos de ilustraciones muy grandes, pues el archivo JPEG resultante será entre seis y ocho veces más pequeño. No ocurre lo mismo con las compresiones JPEG de calidad inferior, puede perder mucho en claridad y detalle. JPEG permite guardar los archivos en modo “progresivo”, muy interesante cuando se trabaja para la Web puesto que muestra la imagen completa gradualmente, mientras el navegador la descarga, utilizando series de lecturas para mostrar visionados cada vez más detallados y con mayor calidad a medida que se van descargando todos los datos de la imagen. Así el navegante no tiene que esperar a que se baje una imagen completamente para ver si le interesa alguna de nuestras ilustraciones. Si va a mostrar la imagen en una página Web puede usar el modo de compresión progresiva. GIF

El formato GIF Graphic Interchange Format (Formato de Intercambio de Gráficos), propiedad de Compuserve, es uno de los más utilizados en espacios Web. Este formato usa, además, el sistema de compresión sin pérdida LZW (Lemple Zif Wellch, el mismo que utiliza el popular ZIP), que es muy eficiente cuando se trata de imágenes con colores planos, líneas definidas y pocos degradados. Por eso este formato está especialmente indicado para dibujos geométricos, elementos de señalética, iconos, etc. Como permite la creación de animaciones, se utiliza mucho para realizar imágenes o spots publicitarios en la Red (banners).

El formato GIF presenta el inconvenientes de su escasa calidad con degradados. PNG

El formato PNG, Portable Network Format (Formato Portable para Redes), pronunciado “ping”, apareció, fruto de un proyecto a través de Internet para crear un sustituto del formato GIF, como respuesta a sus problemas técnicos y legales. Por eso también lo llaman “Png Not Gif”. En Internet, es reconocible por los principales navegadores, pero no por los más antiguos. El formato PNG comprime mejor que GIF. Al igual que GIF y JPEG, puede guardarse en modo entrelazado, y puede trabajar con transparencias. De momento, sólo es superado por GIF en la posibilidad de contener animaciones. PSD

El formato PSD (Photoshop Digital Format) es el nativo de Photoshop para guardar un documento con capas sin acoplar o con una selección guardada, permite retomar el trabajo en el punto en que lo dejamos. Es un formato sin pérdidas, pues no realiza ninguna compresión. Soporta una profundidad de color de hasta 32 bits en cualquier modo de color, y las imágenes mantienen su calidad sin pérdida, al exportarse a programas de auto edición y diseño como PageMaker, QuarkXpress, InDesign, Illustrator, etc. Aunque generalmente, el formato PSD tiene la desventaja de ser poco compatible con otros programas que no sean de Adobe, algunos programas como CorelDraw o Painter abren los ficheros PSD manteniendo su estructura de capas.

Page 74: Módulo I. Desarrollo de habilidades del pensamiento lógico ...prouniversitarios.org/site/recursos/material-de-apoyo/tecnologias-de... · Módulo I. Desarrollo de habilidades del

BMP

El formato BMP, Bit Map (Mapa de Bits) es el formato incorporado por Windows. Como nueve de cada diez computadores incorpora este formato de archivo, está muy extendido, a pesar de su escasa compresión. PICT El formato PICT es muy conocido por los usuarios de Macintosh ya que se utiliza como un formato para las transferencias de archivos entre aplicaciones. La compresión de PICT es especialmente efectiva con imágenes que contienen grandes superficies de color plano, pero no tanto con los canales alpha, que suelen contener grandes zonas de blanco y negro. PDF

Este formato Portable Document Format (Formato de Documento Portable) fue creado por Adobe para permitir la transferencia de documentos con elementos gráficos como dibujos, ilustraciones, rótulos o que utilicen fuentes tipográficas especiales, con la seguridad de que se editen en la forma adecuada, independientemente de la plataforma que se utilice, ya sea Windows, Mac o Linux. EPS

El formato EPS, Encapsulated PostScript Language, de Adobe, puede contener indistintamente gráficos vectoriales como de mapa de bits, y es soportado por la mayoría de los programas gráficos Freehand, Photoshop, Painter, CorelDraw, Quark Xpress y formato AI, sirviendo para transmitir de un programa a otro, la información de una imagen PostScript. Al abrir un archivo EPS que contenga gráficos vectoriales, Photoshop rasterizará la imagen, convirtiendo los elementos vectoriales a píxeles. CDR

Este formato es el nativo de CorelDraw y se trata de un formato para imágenes vectoriales. CMX

EL CMX es un formato para imágenes vectoriales de Corel Presentation Exchange,y desde el Corel Draw 6.0, es el formato de intercambio propio de Corel. AI

El otro formato vectorial más conocido es el AI, nativo de Illustrator, y presenta las mismas características que el CDR. El formato AI está más difundido entre los usuarios de Macintosh, mientras que el CDR lo está entre los de Windows. Ello es debido a que en sus primeras versiones, fueron diseñados para estas plataformas exclusivamente, aunque las versiones más modernas son multiplataforma. Programas

Hay infinidad de programas que servirán para realizar nuestras ilustraciones, unos serán gratis (freeware) y otros costarán bastante dinero, pero tenemos que tener una cosa clara: una ilustración, como cualquier otra obra de arte, sale de dentro de nosotros, y tanto el ordenador como el programa, son herramientas. Un ilustrador con la cabeza “bien amueblada” logrará un mejor trabajo con la peor herramienta, que otro, sin ese “requisito”, con el mejor equipo y cientos de programas. Hay muchos programas comerciales y otros de libre distribución a través de Internet, pero ahora sólo hablaremos de los más utilizados, por no hacer interminable la lista. Hemos visto que hay dos tipos de imágenes, así pues podemos dividir los programas según trabajen con imágenes de mapa de bits o vectoriales. Programas para imágenes de mapa de bits

Photoshop

Adobe Photoshop es el programa de tratamiento de imagen digital profesional por excelencia. Aunque originalmente está concebido para el retoque fotográfico, sus capacidades hacen de él un programa casi imprescindible para la ilustración digital. Ofrece cientos de herramientas de la máxima calidad, con funciones que permiten desde abocetar un dibujo hasta resolver los mínimos detalles, pasando por cambiar y mejorar el color o la luminosidad de diferentes zonas, trabajo con máscaras, jugar con la composición por medio de su sistema de capas, hasta los montajes más complejos, sin olvidar el abundantísimo juego de filtros y efectos especiales que también incluye. El inconveniente de este programa es el precio de su licencia.

Page 75: Módulo I. Desarrollo de habilidades del pensamiento lógico ...prouniversitarios.org/site/recursos/material-de-apoyo/tecnologias-de... · Módulo I. Desarrollo de habilidades del

Painter

Corel Painter es el programa con funciones de simulación de pintura e ilustración. Pone a nuestra disposición casi todas las herramientas imaginables para hacer ilustraciones digitales, recreando los efectos propios de los métodos tradicionales de dibujo y pintura. Es una aventura, desarrollar nuestra creatividad experimentando con todo tipo de pinceles, lápices, espátulas, materiales desde acuarela a óleo pasando por lápices o rotuladores, diferentes soportes y combinándolo todo entre sí hasta encontrar nuevas soluciones expresivas para representar nuestras ideas. Desde el Painter IX, también es compatible con los filtros de Photoshop para Mac OS X. Paint Shop Pro

Corel Paint Shop Pro Photo es un programa de imagen que forma parte de Corel Draw para retocar y editar fotografías, pero al igual que Photoshop, aunque menos potente que éste, nos sirve para trabajar una ilustración. También va provisto gran cantidad de filtros de calidad y efectos. Gimp

GNU Image Manipulation Program (o The GIMP) es un programa libre que permite crear y manipular gráficos, retocar imágenes fotográficas, e incluso presentaciones multimedia. Gimp posee un completo conjunto de herramientas de dibujo y control de la imagen de notable calidad. También trabaja con capas y canales, permite “deshacer” y “rehacer”, tener abiertas numerosas imágenes simultáneas, rotar y escalar imágenes, recortar y hacer efecto espejo etc. Puede ajustarse su interfaz, cargar y grabar animaciones en distintos formatos. Es compatible con numerosos formatos gráficos y permite la conversión entre éstos, aunque, entre otros, tiene algunos problemas con la opacidad de las capas de Photoshop. Su gratuidad hace de este programa una alternativa, aun siendo más limitado, a Photoshop. ArtRage

ArtRage es otro programa libre con el que se puede dibujar en mapa de bits lo que queramos, con una interfaz muy sencilla. No tiene las utilidades, funciones y efectos especiales de Photoshop, pero reproduce con notable realismo el efecto de cada material sobre el papel, incorporando las herramientas más usuales: pinceles, lápices, ceras, tiza, rotulador, una paleta de colores y un sistema para copiar imágenes (“tracing paper”). Programas para imágenes vectoriales Illustrator

Adobe Illustrator es uno de los mejores programas de ilustración y diseño vectorial con que obtener imágenes de gran calidad, con una ventaja: su perfecta integración con Photoshop, InDesign y el resto de programas de Adobe. Posee potentes herramientas de dibujo, para procesar el color, de creación y modificación de tramas, brochas, capacidad de mezclar degradados, numerosas opciones de trazado, símbolos, soporte de “scripts” para repetición de acciones, etc. y adaptado para crear gráficos para la Web. CorelDraw

El Corel Draw es otro de los programas de trabajo gráfico más completos que existen. El debate entre Illustrator y Corel Draw cuenta con defensores y detractores por ambos lados. La versatilidad de las herramientas de Corel Draw y su facilidad de uso, son algunos de sus puntos fuertes. Permite crear una gran variedad de efectos y un gran número de objetos, simplifica ciertas tareas como editar arte lineal y envolver texto en torno a formas, y es una opción frente a Illustrator. Freehand

Macromedia se caracterizó por la calidad de sus productos, y Freehand es un ejemplo. Ha venido siendo utilizado por ilustradores, diseñadores y publicistas para realizar gráficos vectoriales dirigidos a medios impresos e Internet. Se integra bien con los demás productos que eran de Macromedia, sobre todo con los destinados al diseño Web. Inkscape

Inkscape es un programa libre, surgido del proyecto Sodipodi, que ofrece características similares a programas como Illustrator, Freehand o CorelDraw. Trabaja con formas básicas, objetos, trazos, curvas bézier, clones, texto, capas, marcadores, transformaciones, patrones, gradientes, edición de nodos, agrupación de elementos, la exportación de SVG a PNG, operaciones complejas con trazos, vectorización de archivos gráficos, texto en

Page 76: Módulo I. Desarrollo de habilidades del pensamiento lógico ...prouniversitarios.org/site/recursos/material-de-apoyo/tecnologias-de... · Módulo I. Desarrollo de habilidades del

trazos, alineación de textos, edición de XML directo y mucho más. Su propósito es brindar a la comunidad de Internet una herramienta de dibujo SVG que cumpla con los estándares recomendados por el consorcio W3C para la Web. Puede importar varios formatos como EPS, JPEG, PNG, BMP y TIFF, y exportar a PNG así como múltiples formatos vectoriales. La interfaz de Inkscape proporciona un entorno no muy complejo, y equilibrado en paletas y barras de herramientas, de trabajo parecido a CorelDraw. Simplificado respecto a pinceles y filtros, su forma de trabajar con las curvas bézier, es tan eficiente como la de otros programas profesionales. 3.3 Análisis de datos avanzados 3.3.1 Bases de datos para multimedia Las bases de datos

En el entorno informático, la gestión de bases de datos ha evolucionado desde ser una aplicación más disponible para los computadores, a ocupar un lugar fundamental en los sistemas de información. En la actualidad, un sistema de información será más valioso cuanto de mayor calidad sea la base de datos que lo soporta, la cual resulta a su vez un componente fundamental del mismo, de tal forma que puede llegarse a afirmar que es imposible la existencia de un sistema de información sin una base de datos, que cumple la función de "memoria", en todas sus acepciones posibles, del sistema. Las bases de datos almacenan, como su nombre dice, datos. Estos datos son representaciones de sucesos y objetos, a diferente nivel, existentes en el mundo real: en su conjunto, representan algún tipo de entidad existente. En el mundo real se tiene percepción sobre las entidades u objetos y sobre los atributos de esos objetos; en el mundo de los datos, hay registros de eventos y datos de eventos. Además, en ambos escenarios se puede incluso distinguir una tercera faceta: aquella que comprende las definiciones de las entidades externas, o bien las definiciones de los registros y de los datos. La transferencia entre las entidades del mundo real, y sus características, y los registros contenidos en una base de datos, correspondientes a esas entidades, se alcanza tras un proceso lógico de abstracción, conjunto de tareas que suelen englobarse bajo el título de diseño de bases de datos. Sin embargo, es necesario definir, en primer lugar, qué es una base de datos, independientemente de su diseño o su orientación. Entre las numerosas definiciones que pueden encontrarse en la bibliografía, pueden escogerse, por su exhaustividad, las siguientes: "Colección de datos correspondientes a las diferentes perspectivas de un sistema de información (de una empresa o institución), existentes en algún soporte de tipo físico (normalmente de acceso directo), agrupados en una organización integrada y centralizada en la que figuran no sólo los datos en sí, sino también las relaciones existentes entre ellos, y de forma que se minimiza la redundancia y se maximiza la independencia de los datos de las aplicaciones que los requieren. "Una base de datos es una colección de datos estructurados según un modelo que refleje las relaciones y restricciones existentes en el mundo real. Los datos, que han de ser compartidos por diferentes usuarios y aplicaciones, deben mantenerse independientes de éstas, y su definición y descripción han de ser únicas estando almacenadas junto a los mismos. Por último, los tratamientos que sufran estos datos tendrán que conservar la integridad y seguridad de éstos.". La entidad existente en el mundo real es objeto de un doble tratamiento, desde el momento en que convierte en objeto de la base de datos. El tratamiento de sus datos se va a realizar en un nivel lógico, por una parte, y en un nivel físico, por otra. En el primero de ellos, el lógico, se va a trabajar en los aspectos referidos a la identificación de las características de la entidad, su descripción y organización, mientras que en el segundo todo lo anterior se va a plasmar en la organización, acceso y almacenamiento de los datos en un soporte físico. Esta división entre un nivel lógico y otro físico se va reflejar en todos los métodos y conceptos subsiguientes. Bases de datos multimedia

El término multimedia ofrece dos problemas. En primer lugar, el entorno, mercado o ámbito que delimitan a multimedia todavía no ha sido bien definido, y sus límites resultan difusos. En segundo lugar, multimedia es un término que puede significar diferentes cosas, según quién lo utilice. Originalmente, el término multimedia, a finales de la década de 1970, resultaba ser la integración de voz, texto, datos y gráficos, a los que habría que añadir, actualmente, los gráficos interactivos, la imagen en movimiento, la composición de documentos electrónicos y la realidad virtual. La aparición de aplicaciones multimedia sólo ha sido posible gracias al desarrollo de entornos gráficos de usuario para el aprovechamiento de los computadores. La aparición de estos entornos gráficos (Macintosh, Windows, X-Window, NextStep...), basados en la presentación de información en paneles o ventanas, posicionables en la pantalla, y en la utilización de representaciones pictóricas (iconos) como indicadores de elementos, así como de menús de opciones rápidas seleccionables por el usuario, ha modificado en profundidad la manera de presentar y de interactuar sobre los elementos informativos.

Page 77: Módulo I. Desarrollo de habilidades del pensamiento lógico ...prouniversitarios.org/site/recursos/material-de-apoyo/tecnologias-de... · Módulo I. Desarrollo de habilidades del

Uno de los problemas a resolver ha correspondido al almacenamiento y acceso a la información de tipo gráfico. A lo largo de los últimos años han proliferado gran cantidad de formatos de almacenamiento para gráficos (PICT, TIFF, gif, JPEG y otros), que han hecho necesario la creación de filtros y programas de transferencia entre unos y otros. Afortunadamente, se comienzan a establecer ciertos niveles de compatibilidad, con vista a su utilización en bases de datos, a través de meta-ficheros gráficos, que faciliten el acceso a todos los formatos, independientemente de cual se trate y de las aplicaciones que los manipulen. Por último, el auge de multimedia debe gran parte de su éxito a la popularización de los medios ópticos y magneto-ópticos de almacenamiento masivo. La gran cantidad de espacio necesaria para el almacenamiento de ficheros de imagen de calidad adecuada, y el acceso y manipulación de éstos, dentro de un tiempo de respuesta prudencial, ha recibido una respuesta adecuada con el desarrollo de las últimas generaciones de dispositivos de almacenamiento y de lectores de alta velocidad. Tampoco puede pasarse por alto que la gran cantidad de espacio de almacenamiento requerida por imágenes y grandes volúmenes de información textual demanda, a pesar de los medios ópticos de almacenamiento, la utilización de técnicas de compresión y descompresión de ficheros de alta velocidad, que en su mayor parte se realizan mediante software específico, de forma que se combine un aceptable nivel de ocupación de recursos con una garantía de calidad elevada, en lo que respecta al contenido. Los párrafos anteriores cubren cuestiones eminentemente relacionadas con los soportes la información. Sin embargo, un sistema multimedia debe contemplarse desde dos niveles. En primer lugar un nivel intencional, superior, en el que se recogen los conceptos del conocimiento humano que son creados o representados. En segundo lugar, un nivel extensional, inferior, que engloba la organización de los datos. Los conceptos de procesamiento de la información multimedia se distribuyen en ambos niveles. Los nuevos desarrollos en las bases de datos multimedia extienden las concepciones de los sistemas de información y de sus usuarios más allá de la simple integración. Técnicas de inteligencia artificial y sistemas expertos, mecanismos de representación y recuperación de información gráfica, desarrollo de nuevas interfaces de usuario, integración general de hipertexto e hipermedia, aplicaciones en el campo de la educación y la formación, etc. Los STRID que se impondrán en el mercado de pocos años incorporarán al tratamiento documental tradicional todas estas herramientas. Aspectos económicos de la industria multimedia: El producto

La importancia económica de esta tecnología dentro de la Sociedad de la Información, parece indiscutible. Se trata de un sector en plena expansión y que, según todos los indicios, acaparará una importante cuota de mercado. Pero conviene, ante la euforia general, ser cautelosos a la hora de hacer afirmaciones definitivas sobre su trascendencia o futuros desarrollos. Hay que decir en primer lugar, que se trata de un mercado en constitución/formación, cuyos actores o elementos participantes son múltiples: productores de hardware y software, operadores de telecomunicación, editores y medios de comunicación, fabricantes de electrónica de consumo y las propias administraciones públicas y gobiernos, etc. lo que implica una complejidad añadida. Por otro lado, se están produciendo a nivel mundial una serie de alianzas entre las principales empresas e industrias de los sectores arriba mencionados, y que suponen la aparición de grupos financieros muy poderosos. Dicho con otras palabras, se está produciendo una globalización del mercado y un cambio o incremento de las actividades productivas de los actores, que amplían sus actividades a campos no habituales en su actividad empresarial principal. Los operadores de telecomunicación invierten en los medios de comunicación, o los productores de contenidos multimedia en la producción de equipamientos, por ejemplo. Hasta que el mercado multimedia no se asiente, resulta muy difícil hacer predicciones fiables o extraer valoraciones definitivas. Es difícil encontrar cifras y datos fiables en cuanto a la presencia, características y contenidos de las bases de datos multimedia en el conjunto de la Industria de la Información. Esto es debido principalmente a dos factores: La corta trayectoria comercial de este tipo de productos. Recordemos que las bases de datos multimedia públicas no aparecen en el mercado hasta mediados de los años ochenta. A pesar de la popularización del término multimedia, éste no está reflejado como una categoría individual en los directorios y estudios estadísticos sobre bases de datos. En una concepción estricta, un contenido multimedia sería la combinación de dos o más medios; en este sentido, las bases de datos orientadas a texto, en especial las de texto completo que incluyen ilustraciones, fotos y gráficos, pudieran ser consideradas multimedia y, por otro lado, bases de datos de imagen fija (archivos fotográficos) no presuponen más que la presencia de un tipo de información, sin poder clasificarse como multimedia.

Page 78: Módulo I. Desarrollo de habilidades del pensamiento lógico ...prouniversitarios.org/site/recursos/material-de-apoyo/tecnologias-de... · Módulo I. Desarrollo de habilidades del

Si se acude al Gale Directory of Databases 1997, principal fuente de información para obtener una perspectiva internacional, vemos que clasifica las BD según la representación de los datos, en: orientadas a texto, orientadas a imagen (fija y vídeo) y orientadas a sonido (audio). Los datos cuantitativos más interesantes son los siguientes. En 2016, el total de BD de imagen fija y vídeo es de 846 y representa un 9% de total del mercado. Destaca, también, en esta categoría que un crecimiento notable ya que ha pasado de 14 BD (menos de 1%), en 2008, a 846 (9%), en 2016. El número de BD se ha incrementado con un factor 11 desde 2010 y se multiplicado por 70 desde 2008. En cuanto a las bases de datos de sonido: pasan de 1 BD (en 2008) a 304 (en 2016) representando un 3% del mercado. Si sumamos ambos porcentajes, podemos decir que las bases de datos multimedia representan aproximadamente de un 12% del mercado actual, aunque esta cifra se antoja excesivamente baja para la oferta actual. El estudio destaca la alta velocidad de crecimiento del sector y una previsible mayor presencia cuando las condiciones técnicas sean óptimas y se hayan superado las limitaciones actuales. Usuario multimedia

El mercado multimedia tiene como primera necesidad u objetivo satisfacer al usuario (y así lo reconocen el Informe Bangemann y la mayoría de los trabajos consultados), de tal manera, que esta industria es impensable sin la aceptación de los usuarios. Es necesario, dicen, crear una “masa crítica” de usuarios, que sea suficiente para rentabilizar las enormes inversiones en infraestructura de comunicaciones y desarrollo de nuevas tecnologías. El usuario o cliente objetivo de este mercado puede tipificarse en tres categorías: Las PYME La Administración Pública El usuario privado. Cada uno de estos usuarios debe ser satisfecho en sus necesidades de información y servicios, y esto determinará el desarrollo del producto multimedia más que las posibilidades tecnológicas disponibles en cada momento. El usuario PYME es el que menos valora el multimedia, sus usos principales son las aplicaciones transaccionales (telebanco) y comunicación interna (entre departamentos y sucursales). Se espera de él, de acuerdo con las políticas y directrices europeas, que asuma un papel activo y la mayor parte de la inversión. El usuario “institucional” se decanta, en sus usos, hacia la comunicación entre profesionales afines y la consulta de información sobre subvenciones y ayudas, principalmente. Cabe esperar que este usuario sea un promotor decidido del empleo de productos multimedia, y en algunos casos, modelo a imitar, (véanse las aplicaciones creadas por el Instituto Madrileño de Formación, o el INEM), aunque no es su responsabilidad la construcción de un entramado comercial. El usuario particular hace uso del multimedia con el fin principal de obtener información. El perfil del usuario medio resulta cuando menos curioso. Mayoritariamente, es una persona joven, menor de 25 años (70%); en segundo lugar, en la clasificación por grupos de edad aparecen los usuarios entre 25-40 años (23%). El usuario medio tiene estudios de nivel superior (66 %) y no tiene ingresos propios (63 %) y su actividad principal es el estudio (63%). Sus contenidos preferidos son las enciclopedias electrónicas y la formación de adultos. Contenidos multimedia Como principal aplicación, figuran las b.d. representadas por 72 productos. En segundo lugar, y casi con el mismo porcentaje, aparece el “libro electrónico”(71 productos), que curiosamente no incluye las “enciclopedias electrónicas" (36 productos), que representan un 16% aprox. del mercado. Merece también mencionarse que los cursos de formación (35 productos) tienen prácticamente la misma presencia porcentual que las enciclopedias. Sectores de mercado; servicios y aplicaciones

El sector de educación/formación con 138 productos y representando el 61% del mercado, es el mejor atendido. La necesidad de formación y educación adecuadas a las nuevas circunstancias, léase Sociedad de la Información, es considerada por todos los estudiosos como una condición indispensable para el triunfo de ésta. Los servicios multimedia básicos que se ofertan al cliente aumentarán previsiblemente. Servicios hasta ahora considerados minoritarios, como la transferencia de ficheros, el correo electrónico o la videoconferencia se popularizarán por sus aplicaciones en el mundo empresarial, principalmente. La aparición de nuevas redes de comunicación - las llamadas “redes de alta velocidad”-, servirán de infraestructura adecuada para superar los problemas de transmisión y gestión de la información multimedia. Proliferarán los servicios de valor añadido: telebanco, telecompra, educación a distancia, televisión a la carta,

Page 79: Módulo I. Desarrollo de habilidades del pensamiento lógico ...prouniversitarios.org/site/recursos/material-de-apoyo/tecnologias-de... · Módulo I. Desarrollo de habilidades del

etc. Los contenidos de alta calidad se revelan ahora como un factor crítico, siendo necesaria la creación de productos específicamente adaptados a esta tecnología y que hagan uso de sus capacidades específicas. (Bajo el acogedor manto del multimedia, se reúnen demasiados productos que no son más que una reedición de libros y documentos tradicionales en un soporte diferente.) Entre las múltiples aplicaciones posibles para los sistemas multimedia, aquí nos interesan: Aplicaciones a la Documentación y Gestión de la información: En esta área, las aplicaciones son numerosas y significativas. Quizá, la mayor popularidad la ostenten las “unidades de información virtuales”, nos referimos a las bibliotecas, museos y archivos virtuales que, gracias a las comunicaciones, ofrecen acceso remoto a enormes volúmenes de información y documentos. Aplicaciones a la formación: En contra de lo que pudiera parecer, por esa especie de euforia colectiva antes mencionada, las herramientas pedagógicas multimedia no están todavía al alcance de todas las instituciones formativas, ni su empleo es mayoritario en la enseñanza. El empleo del multimedia como herramienta instructiva supone importantes cambios en los métodos de enseñanza y aprendizaje, afectando a pilares básicos de la filosofía educacional: principalmente, al papel del estudiante o aprendiz. Frente a concepciones tradicionales, basadas en la responsabilidad central del profesor –como transmisor de contenidos y supervisor del proceso instructivo - la pedagogía actual plantea el traslado al estudiante del control de aprendizaje: siendo éste el responsable de determinar cómo, cuándo, y qué aprender. En general, podemos decir que la educación basada en el concepto multimedia requiere un estudiante más maduro, activo e implicado en el proceso de aprendizaje que debe ser formado, en este sentido, desde la educación básica. En el caso concreto de la formación de documentalistas - entendidos como gestores de información - resulta evidente que se trata una herramienta imprescindible para lograr profesionales que se adapten al mercado laboral actual. Los estudios deben incluir no sólo la utilización instrumental de productos multimedia sino también el diseño y gestión de este tipo de bases. El uso, cada vez más generalizado, de Internet como herramienta de formación, facilita a las instituciones públicas una vía de enseñanza multimedia de coste moderado. Pero la Universidad española no debe contentarse con ser un usuario multimedia sino que debe convertirse en creador de contenidos, especialmente cursos de formación y entrenamiento que se adapten a las necesidades de usuarios, permitiendo una progresiva independencia de los horarios de estudio rígidos así como de los escenarios físicos de aprendizaje. La integración de multimedia en las bases de datos.

La aparición y desarrollo de la tecnología multimedia ha revolucionado el concepto tradicional de base de datos, entendidas como elementos de información textual y numérica, los cuales a su vez eran organizados de acuerdo a un conjunto preestablecido de normas. Estos componentes se ven enriquecidos por la posibilidad de completar los objetos a los que representan mediante elementos gráficos y/o sonoros, en un entorno integrado. El usuario obtiene entonces una representación compleja, múltiple, de los objetos del mundo real, y de sus categorías de información, que son representados en la base de datos. El ambiente de un sistema de gestión de bases de datos multimedia integra texto, datos, video, imagen (estática y dinámica) y sonido. Los documentos multimedia.

Los documentos multimedia se forman mediante la agregación de objetos de diferentes tipos, objetos que pueden ser de gran tamaño, y llegan a mostrar gran variedad en lo referido a estructura y representación. La representación del documento multimedia busca comunicar de forma efectiva no sólo el documento y su contenido, sino también la semántica, los conceptos subyacentes y la relación entre ellos. Una comunicación de información que siga estas normas tiene asegurado un adecuado nivel de calidad. Por lo tanto, resulta ineludible fijar como uno de los enfoques básicos el análisis de las características de los usuarios humanos del sistema, para lo cual deben analizarse los patrones de comportamiento del usuario en el acceso y comprensión de las estructuras informativas. Los sistemas de gestión de bases de datos multimedia.

De hecho, es la heterogeneidad de los tipos de información que son necesarios en la actualidad unas las razones que ha favorecido, por parte de la industria y los usuarios, el desarrollo de sistemas de gestión de bases de datos multimedia, que han sido llamados también "gestores de información hipermedial". Las aplicaciones SGBD tradicionales ofrecían limitaciones en aspectos como el acceso complejo a datos, la transferencia de datos con otros sistemas, o la inexistencia de adecuados interfaces de usuario. Como respuesta, se tiende a diseñar e implementar nuevos SGBD que sean capaces de utilizar "inteligentemente" los datos disponibles, e integrar las viejas y las antiguas aplicaciones de forma no traumática. Una base de información hipermedial tiene varios componentes:

Page 80: Módulo I. Desarrollo de habilidades del pensamiento lógico ...prouniversitarios.org/site/recursos/material-de-apoyo/tecnologias-de... · Módulo I. Desarrollo de habilidades del

Base de presentación: parámetros a aplicar para mostrar la información al usuario. Base de estructura: visión lógica del hiperdocumento, según un modelo. Base de contenido: conjunto de documentos que se integran en el hiperdocumento. Base de utilización: información sobre hábitos y comportamiento de cada usuario. En este mismo sentido, la concepción de una base de datos multimedia, en su modelo conceptual (correspondiente al esquema conceptual definido por ANSI/X3/SPARC), debe cumplir dos fases: Cognición, centrado en cómo reconocer el mundo real, sus entidades y relaciones. Modelización, centrado en cómo representar los conocimientos obtenidos en la fase anterior, de manera que sean manipulables por la máquina. A pesar de ser la integración de bases de datos heterogéneas una de las razones del desarrollo de sistemas de gestión de bases de datos multimedia, la industria todavía no ha establecido todavía estándares de formato entre ellas, por lo que se repite la misma situación. Aunque las aplicaciones tradicionales ya ofrecen "puentes" para compartir sus bases de datos, por el momento esto no es posible en lo que respecta a las bases de datos multimedia. Sin embargo, están comenzando a aparecer en el mercado nuevas aplicaciones que, sin cumplir los requerimientos clásicos de un SGBD, pueden generar documentos multimedia, tomando como base información y datos contenidos en otros tipos de fichero. Los límites entre la base de datos "real", y el documento multimedia resultante "virtual", son difíciles de establecer en el estado actual de la tecnología. Si puede decirse que es posible establecerse un algoritmo que define el proceso de formateo y composición del documento, en dos niveles:

Jerarquía lógica del contenido del documento.

Jerarquía física del documento formateado.

Componentes de una base de datos multimedia.

En la actualidad nos encontramos con la necesidad de manejar una gran cantidad de material digitalizado; texto, video, imágenes, sonidos son las principales formas en las cuales podemos encontrar dicho material. Todos estos datos multimedia, deben estar almacenados en una Base de Datos para poder ser manipulados convenientemente. Tal y como se ha comentado a lo largo del trabajo, una base de datos es una colección de datos que es gestionada y organizada por un software específico; el DBMS (DataBase Management System, Sistema de Gestión de Base de Datos). Un DBMS es, sustancialmente, un software que se coloca entre el usuario y los datos como tales. Pero sabemos que la mayoría de las bases de datos relacionales actuales no soportan gran volumen de información, como la de almacenar un video, que puede llegar a ocupar hasta varios gigabytes. Hay que tener en cuenta varios problemas a la hora de guardar datos multimedia en una base de datos: La base de datos debe soportar objetos grandes, dado que los datos multimedia como los vídeos pueden ocupar hasta gigabytes de almacenamiento. En muchas aplicaciones de datos multimedia se necesita de la recuperación basada en la semejanza. Por ejemplo en una base de datos que guarda imágenes de huellas dactilares se proporciona la imagen de una huella digital para consulta y se deben recuperar las huellas dactilares de la base de datos que sean parecidas. La recuperación de algunos tipos de datos, como el sonido y el vídeo, tiene el requisito de que el suministro de datos debe realizarse a una velocidad constante garantizada. Por ejemplo si los datos de sonido no se proporcionan a tiempo, habrá interrupciones en el sonido. Si los datos se proporcionan demasiado rápido, la memoria interna del sistema pueden desbordarse lo que daría lugar a la perdida de datos. Además deben tener operaciones específicas para trabajar con estos tipos de datos multimedia. Multimedia es una plataforma donde se integran imágenes, videos y sonidos para hacer ciertas tareas que proporcionan a los usuarios nuevas oportunidades de trabajo y acceso a nuevas tecnologías. Multimedia permite utilizar el texto para interactuar con los sistemas de información. Permite mostrar impresionantes imágenes de gran colorido y excelente resolución, animación y vídeo real. Brinda una mejora significativa en la efectividad de la comunicación. La riqueza de los elementos audiovisuales, combinados con el poder del computador, añade interés, realismo y utilidad al proceso de comunicación. Una base de datos multimedia está compuesta, por lo tanto, de objetos. Los objetos multimedia representan una abstracción de la vida real, es decir, es la manera de representar a través del computador momentos y situaciones de la vida cotidiana. Los objetos multimedia suelen tener atributos de descripción, como los que indica el momento en que se crearon, la persona que los creó y la categoría a la que pertenecen. Entre los diferentes tipos de objetos multimedia, se encuentran los siguientes: Video,Texto,Imágenes.Audio

Page 81: Módulo I. Desarrollo de habilidades del pensamiento lógico ...prouniversitarios.org/site/recursos/material-de-apoyo/tecnologias-de... · Módulo I. Desarrollo de habilidades del

3.4 Redes computacionales y comunicación 3.4.1 Circuitos digitales y telecomunicaciones Circuitos digitales

Un Sistema es un conjunto de elementos que guardan una relación entre sí, a su vez un elemento del sistema puede ser otro sistema (subsistema Un sistema digital es aquel cuyos elementos son digitales (sólo pueden adoptar valores discretos). Los Sistemas Digitales trabajan con elementos binarios (sólo pueden adoptar dos valores). Para poder realizar el estudio de los Sistemas Digitales se necesita estudiar un álgebra binaria. El Álgebra de George Boole, que data de 1854, es sin dudas la más apropiada para nuestro fin. Claude Shannon en 1938 adaptó esta álgebra para la aplicación en sistemas digitales. eguidamente se estudia el álgebra de Boole, las funciones booleanas, las compuertas lógicas, los Sistemas Combinacionales y, finalmente, los Sistemas Secuenciales. Álgebra de Boole Postulados y teoremas

Dentro de las álgebras de Boole, es de utilidad definir la bivalente, es decir compuesta por sólo dos elementos. Así, el álgebra es un conjunto de elementos binarios relacionados entre sí mediante las operaciones lógicas producto [.] y suma [+], que cumplen con los siguientes postulados (las letras a, b, c, etc., indican variables binarias): Existe el elemento identidad a + 0 = a a . 1 = a Las dos operaciones cumplen con la propiedad conmutativa a + b = b + a a . b = b . a Propiedad distributiva a . (b + c) = (a . b) + (a . c) a + (b . c) = (a + b) . (a + c) Complementación o inversión lógica a + a’ = 1 a . a’ = 0 Algunos teoremas importantes son: Dualidad: Toda igualdad lógica sigue siendo válida si se intercambian los operadores (+ y .) y los elementos de identidad (0 y 1). La simetría de los postulados demuestra este teorema. El álgebra es un conjunto cerrado; es decir, los resultados de aplicar las operaciones lógicas a las variables, pertenecen al álgebra. En el álgebra se cumple que a + 1 = 1 a . 0 = 0 Ley de Idempotencia a + a = a a . a = a Ley de involución (a’)’ = a Las operaciones lógicas son asociativas a + (b + a) = (a + b) + c a . (b . c) = a . (b . c)

Page 82: Módulo I. Desarrollo de habilidades del pensamiento lógico ...prouniversitarios.org/site/recursos/material-de-apoyo/tecnologias-de... · Módulo I. Desarrollo de habilidades del

Absorción: a = a + (a . b) a = a . (a + b) Leyes de De Morgan (a + b + c + d + .......+ n)’ = a’ . b’ . c’ . d’ ...........n’ (a . b . c . d .........n)’ = a’ + b’ + c’ + d’ + ..........+ n’ Con excepción del teorema 1, siempre aparecen dos expresiones, obsérvese que la segunda es la dual de la primera. Se recomienda al alumno demostrar estos teoremas en forma algebraica basándose en los postulados. Aún cuando las operaciones + y . son distributivas entre sí, de ahora en más prescindiremos de los paréntesis que encierran los productos lógicos. Además el símbolo del producto no se indicará en lo sucesivo. De esta forma, por ejemplo, la expresión a + (b . c) . (d + e) se escribirá a + b c (d + e) Funciones lógicas Una función lógica es una variable binaria que depende de otras variables binarias relacionadas entre sí por las operaciones lógicas. Una función lógica se nota de la siguiente manera: f(a ,b ,c ,......., n) = {expresión lógica que involucra a las variables a ,b ,c , d,......, n} La función adoptará el valor 0 o 1 de acuerdo a la expresión y al valor determinado de las variables. Por ejemplo: f(a ,b, c) = a b’ + a c Se trata de una función de tres variables a la cual le corresponde la siguiente Tabla de Verdad, ver figura 1. Puede decirse que la tabla de verdad es otra forma de expresar una función lógica.

C B A F(a, b, c)

0 0 0 0

0 0 1 1

0 1 0 0

0 1 1 0

1 0 0 0

1 0 1 1

1 1 0 0

1 1 1 1

Figura 1

Teoremas de funciones lógicas En el Álgebra de Boole se cumple

F(a, b, c,.....n) = a f(1, b, c,....n) + a’ f(0, b, c,.....n) Para demostrar esta igualdad basta con reemplazar a = 1 y a = 0 en la expresión y verificar que la misma se cumple en ambos casos. También, considerando que la función en cuestión no tiene restricciones, se puede decir que también es válida su dual: F(a, b, c,.....,n) = [a + f(0, b, c, ....n)] [a’ + f(1, b, c,....n)]

Page 83: Módulo I. Desarrollo de habilidades del pensamiento lógico ...prouniversitarios.org/site/recursos/material-de-apoyo/tecnologias-de... · Módulo I. Desarrollo de habilidades del

Y se trata de una función cualquiera. Este teorema posee corolarios muy útiles a la hora de simplificar (obtener una expresión más simple de la misma función) funciones (expresiones en general) lógicas. Se obtienen efectuando el producto miembro a miembro de la primera expresión por a o por a’, como se indica a continuación: a f(a, b, c, ....n) = a [ a f(1, b, c, ....n) + a’ f(0, b, c,.....n)] aplicando propiedad distributiva al segundo miembro, se obtiene: a f(a, b, c, ....n) = a f (1, b, c, ....n) Primer Corolario a’ f(a, b, c, ....n) = a’ [ a f(1, b, c, ....n) + a’ f(0, b, c,.....n)] aplicando propiedad distributiva al segundo miembro, se obtiene: a’ f(a, b, c, ....n) = a’ f (0, b, c, ....n) Segundo Corolario Aplicando dualidad a los corolarios, se obtienen: a + f(a, b, c, ...n) = a + f(0, b, c, ....n) Tercer Corolario y a’ + f(a, b, c, ...n) = a’ + f(1, b, c, ....n) Cuarto Corolario Toda función lógica puede expresarse en forma canónica, es decir: - Como una sumatoria de términos en los cuales aparecen todas sus variables en forma de producto lógico (estos términos se llaman MINTERMS) - O como una productoria de términos en los cuales aparecen todas sus variables en forma de suma lógica (estos términos se llaman MAXTERMS). En ambos casos la función se dice expresada en forma canónica y sus términos (ya sean minterms o maxterms se llaman términos canónicos). Se demostrará este teorema para una función de dos variables f(a, b), luego se hará extensivo para n variables. Aplicando el teorema 1 a f(a, b), se tiene: F(a, b) = a f(1, b) + a’ f(0, b) Aplicando nuevamente el teorema 1 a f(1, b) y a f(0, b), se tiene: F(1, b) = b f(1, 1) + b’ f(1, 0) F(0, b) = b f(0, 1) + b’ f(0, 0) Reemplazando en la expresión inicial se obtiene F(a, b) = a b f(1, 1) + a b’ f(1, 0) + a’ b f(0, 1) + a’ b’ f(0, 0) Se observa entonces que toda función puede expresarse como una sumatoria de todos sus minterms, afectados cada uno de ellos por un coeficiente que consiste en el valor de la función (calculado reemplazando las variables por 1 o por 0 sí, en el minterm que acompaña, la variable correspondiente se encuentra directa o negada respectivamente). Teniendo en cuenta que f(a, b) es una función cualquiera del álgebra de Boole, su dual también lo será, por lo tanto: F(a, b) = [a + b + f(0, 0)] [a + b’ + f(0,1)] [a’ + b + f(1, 0)] [a’ + b’ + f(1, 1)] Se observa entonces que toda función puede expresarse como una productoria de todos sus maxterms, afectados cada uno de ellos por un coeficiente que consiste en el valor de la función (calculado reemplazando las variables por 0 o por 1 sí, en el maxterm que acompaña, la variable correspondiente se encuentra directa o negada respectivamente). La generalización de los resultados obtenidos para funciones de n variables, resulta evidente.

Page 84: Módulo I. Desarrollo de habilidades del pensamiento lógico ...prouniversitarios.org/site/recursos/material-de-apoyo/tecnologias-de... · Módulo I. Desarrollo de habilidades del

A fin de obtener una notación más sencilla de las funciones lógicas, se suele asignar a cada término canónico un número decimal que se obtiene dando pesos a las variables de acuerdo a sí las mismas se encuentran expresadas en forma directa o negada. El convenio es el siguiente: Figura 2

VARIABLE PESO

A 1

B 2

C 4

D 8

E 16

F 32

---- -----

Si la variable aparece en forma negada, el peso asignado es cero. Según el convenio entonces, el término canónico cualquiera a’ b c’ d correspondiente a un minterm de una función de cuatro variables, tendrá el número decimal 10. El convenio mencionado permite una tercer forma, llamada compacta, de notar una función, a saber: F(a, b, c,....n) = i=0, 2n-1) i f(i) = i=0, 2n-1) [(2n – 1 - i) + f(i)] De la expresión anterior se deduce una regla para pasar de una función canónica en minterms a una en maxterms y viceversa: Se buscan los términos canónicos que no están en la expresión de la función, y se los complementa a 2n – 1. Estos serán los términos de la función buscada. Por ejemplo: Sea la función de 4 variables F(a, b, c, d) = (0, 1, 3, 5, 6, 7, 10, 13, 14, 15) Los términos canónicos que no están son: 2, 4, 8, 9, 11 y 12. Sus complementos a 15 son: 13, 11, 7, 6, 4 y 3. Por lo tanto la expresión canónica en maxterms de la función es: F(a, b, c, d) = (3, 4, 6, 7, 11, 13) Nótese que, a modo de verificación, la suma del número de minterms y maxterms de una función, siempre es igual a 2n – 1. Minimización de funciones lógicas Es importante obtener la mínima expresión posible de una función, esto es la menor cantidad de variables y operaciones involucradas. Los métodos de minimización se basan en los postulados del álgebra y a la conveniencia de agregar oportunamente términos en la expresión de la función. Para aplicar los métodos es necesario que la función esté expresada en forma canónica. Como se vio en el punto anterior, toda función lógica es expresable en forma canónica, ya sea en minterms o maxterms. Supóngase que una función canónica de 4 variables posee en su expresión los siguientes términos canónico. .....+ a’ b c d’ + a b c d’+ ..... Se observa que puede sacarse factor común de la siguiente forma .....+ b c d’ (a’ + a)+ ........ Según el postulado 4, a’ + a = 1, por lo tanto .....+ b c d’ 1 +..... = ....+ b c d’ + ..... Se ha perdido la variable a.

Page 85: Módulo I. Desarrollo de habilidades del pensamiento lógico ...prouniversitarios.org/site/recursos/material-de-apoyo/tecnologias-de... · Módulo I. Desarrollo de habilidades del

Este procedimiento se sistematiza detectando todos los términos canónicos de la función que difieran en el estado (directo o negado) de sólo una variable, se saca factor común entre ellos y se van eliminando variables. Sea el siguiente ejemplo: F(a, b, c, d) = 4 (0 , 4, 8, 12) La expresión algebraica de la misma es: F(a, b, c, d) = a’ b’ c’ d’ + a’ b’ c d’ + a’ b’ c’ d + a’ b’ c d Se ve que los dos primeros son adyacentes, como así también los dos últimos. Puede sacarse factor común: F(a, b, c, d) = a’ b’ d’ (c’ + c) + a’ b’ d (c’ + c) = a’ b’ d’ + a’ b’ d Los dos términos que quedan, si bien no canónicos, son adyacentes, quedando finalmente: F(a, b, c, d) = a’ b’ (d’ + d) = a’ b’ E. W. Veitch en 1952, propuso un método gráfico para la identificación de los términos adyacentes de una función. Posteriormente Maurice Karnaugh lo modificó tal como se conoce actualmente. Consiste en mapas aplicables a funciones de dos, tres, cuatro y cinco variables. Para funciones de más variables no resulta práctico este método gráfico, se usa un método numérico que no se estudia en este curso. Los mapas Karnaugh son los siguientes: Para funciones de 4 variables: Los dos números binarios en las columnas y las filas, que siguen un código Gray de dos variables, se corresponden con las variables directas o negadas de cada cuadro, y los números decimales son los asignados a cada término canónico según la convención indicada con anterioridad. Esta tabla genérica puede particularizarse para una función determinada marcando en la misma con un 1 los términos canónicos que forman parte de la función. De esta forma es sencillo identificar los términos. Figura 3

canónicos adyacentes que serán los que limitan por los lados. Por ejemplo, el término canónico 14, posee cuatros términos adyacentes que son: 6; 10; 12 y 15. Formar un grupo entre dos unos colindantes en el mapa se corresponde con sacar factor común y perder la variable que cambia. Es de suponer la conveniencia de realizar los grupos que contengan mayor cantidad de unos en su interior. Pero esto debe seguir ciertas reglas. Sea la función de 4 variables siguiente: F(a, b, c, d) = S (0, 1, 2, 3, 6, 7, 8, 9, 10, 11, 14, 15) El mapa que le corresponde es el indicado en la figura 4. El grupo 0-2 corresponde a sacar factor común con pérdida de la variable b.

Page 86: Módulo I. Desarrollo de habilidades del pensamiento lógico ...prouniversitarios.org/site/recursos/material-de-apoyo/tecnologias-de... · Módulo I. Desarrollo de habilidades del

Figura 4

El grupo 3-1 pierde la variable b.

Se observa que estos dos grupos son adyacentes y se pueden juntar en un solo grupo 0-1-2-3 donde se pierden las variables a y b. El mismo razonamiento es válido para el grupo 8-9-10-11 que pierde las variables a y b. Se observa que estos grupos son adyacentes y podría formarse un solo grupo 0-1-2-3-8-9-10-11 donde sólo queda la variable c’. Para el grupo vertical de 8 unos se ha seguido el mismo procedimiento, cabe aclarar que los términos canónicos 2, 3, 10 y 11 se han usado dos veces. Esto puede realizarse ya que según el teorema 5, un termino canónico podría repetirse cuantas veces se quiera sin alterar el valor de la función. La función minimizada queda por lo tanto F(a, b, c, d) = b + c’ Cabe aclarar que la última expresión es una suma porque la función inicial estaba en minterms, es decir era una sumatoria. De lo visto pueden enunciarse la siguiente regla de formación de grupos: Se agrupan la mayor cantidad de unos posible, siempre que sean una potencia de dos y el grupo resultante pueda subdividirse en grupos menores. Se agrupan los unos restantes siguiendo la regla a), pudiendo usar (si es conveniente) un uno ya agrupado anteriormente Se repite b) hasta realizar todos los unos. Para el caso de funciones de tres y de dos variables las tablas son más pequeñas y la regla de formación de grupos es la misma. Se invita al alumno a sugerir cómo serías estas tablas y visitar el Práctico correspondiente resolviendo los ejercicios propuestos. Compuertas lógicas

La realización práctica (implementación) de las funciones lógicas se hace por medio de las compuertas lógicas que son la base constructiva de la electrónica digital. No todas las funciones lógicas presenta interés práctico. En la figura 5 se muestran las compuertas lógicas más comunes.

Page 87: Módulo I. Desarrollo de habilidades del pensamiento lógico ...prouniversitarios.org/site/recursos/material-de-apoyo/tecnologias-de... · Módulo I. Desarrollo de habilidades del

Figura 5

En la figura aparecen compuertas de dos entradas. Existen compuertas de más entradas disponibles comercialmente en circuitos integrados (chips) en SSI. En función de la cantidad de compuertas por chip, se suele clasificar a los CI en escalas de integración: SSI, escala de integración pequeña, hasta 10 compuertas por CI MSI, escala de integración media, de 10 a 100 compuertas por CI LSI, escala de integración grande, de 100 a 1000 compuertas por CI VLSI, escala de integración muy grande, más de 1000 compuertas por CI. A la hora de implementar una función lógica es cuando se torna importante la minimización. Por ejemplo, sea la función: F(x, y, z) = 3 (2, 4, 5, 6) Si implementamos esta función sin minimizar, obtenemos el circuito de la figura 6.

Page 88: Módulo I. Desarrollo de habilidades del pensamiento lógico ...prouniversitarios.org/site/recursos/material-de-apoyo/tecnologias-de... · Módulo I. Desarrollo de habilidades del

Figura 6

Se invita al alumno a minimizar la función y comparar los resultados obtenidos. Sistemas digitales

Un sistema digital es un conjunto de elementos binarios relacionados entre si de alguna manera. Se distinguen dos tipos de variables en un sistema digital. Las variables de entrada y las variables de salida que dependen de las de entrada. Funcionalmente las variables de entrada se dividen en dos grupos: variables de proceso y variables de control. Ver figura 7 Figura 7

Cuando cada combinación de las variables (Vector de entrada) de entrada se corresponde con una y sólo una combinación de las variables de salida (Vector de salida), se trata de un sistema combinacional. Dicho de otra manera, siempre que se repita un conjunto de valores de las variables de entrada, se repetirá la salida. En la fig. 8 se muestran las correspondencias entre entradas y salidas de un sistema combinacional Cuando a un mismo vector de entrada puede corresponder más de uno de salida, el sistema se llama secuencial. Dicho de otra manera cuando se repite un conjunto de valores de las variables de entrada, no necesariamente se repetirá la salida. Los sistemas secuenciales deben poseer memoria interna ya que sus salidas son consecuencia de la evolución anterior de sus entradas. En la figura 9 se muestra las correspondencias de un sistema secuencial.

SISTEMA

DIGITAL

Variables

de proceso

Variables de control

Variable

s de

salida Variable

s de

entrada

Page 89: Módulo I. Desarrollo de habilidades del pensamiento lógico ...prouniversitarios.org/site/recursos/material-de-apoyo/tecnologias-de... · Módulo I. Desarrollo de habilidades del

Figura 8. Correspondencias para un Sistema Combinacional

Figura 9. Correspondencias para un Sistema Secuencial

Sistemas Combinacionales

De lo definido en el punto anterior se concluye que en un Sistema combinacional las salidas no son otra cosa que funciones lógicas de las entradas. Figura 10

En la fig. 10 se ve el diagrama en bloque de un combinacional con n entradas y m salidas. Se puede escribir que: zi = fi (x1, x2, ...... xn) De lo anterior se deduce que para diseñar un circuito combinacional bastará con minimizar las funciones requeridas y finalmente implementar con compuertas lógicas.

Page 90: Módulo I. Desarrollo de habilidades del pensamiento lógico ...prouniversitarios.org/site/recursos/material-de-apoyo/tecnologias-de... · Módulo I. Desarrollo de habilidades del

Circuitos Combinacionales MSI

Cuando las funciones lógicas son muy complejas no siempre el diseño basado en la minimización y posterior implementación con compuertas lógicas, es el más adecuado. Las técnicas de integración han permitido CI más complejos. Por ejemplo en MSI se dispone de CI de hasta 100 puertas. Estos bloques funcionales MSI, si bien a veces tienen fines específicos, pueden aplicarse a la implementación de funciones lógicas de muchas variables. Las ventajas caen en la disminución de los CI necesarios, del tiempo de diseño, del número de conexiones externas y facilita el mantenimiento. A continuación se describen brevemente los Combinacionales MSI más comunes Codificadores

Permiten codificar las líneas de entrada. Generalmente codifican en binario o BCD. En la figura 11 se muestra un codificador binario de 8 entradas y 3 salidas, su circuito interno y su tabla de verdad.

Figura 11

En este codificador se supone que sólo esta activa una entrad por vez. En caso de no ser así la salida debe calcularse como la función OR bit a bit de las salidas correspondientes a las entradas activadas independientemente. Estos decodificadores se llaman sin prioridad. Si en la tabla de verdad de la fig. 11 se reemplazan con x los ceros a la izquierda de los unos de las entradas, se obtiene un codificador con prioridad. La entrada de mayor prioridad es la que define la salida. Si ninguna entrada está activa las salidas son todas cero, igual que si estuviera activada la entrada D0. Para evitar este problema los codificadores cuentan con una salida adicional que indica la ausencia de activación de las entradas. Por último los codificadores suelen contar con una entrada de habilitación. Cuando el chip está activado es válida la tabla de verdad, si no lo está el chip no funciona. Decodificadores

Son Combinacionales que poseen n entradas y m salidas. El orden adecuado de la salida se activa cuando la codificación correspondiente se inyecta ala entrada. Generalmente son binarios o BCD. En caso de un decodificador binario si tiene n entradas poseerá m = 2n salidas. Así un decodificador realiza lo opuesto a un codificador. En la figura 12 se muestra un decodificador de 3 x 8 y su tabla de verdad. Los decodificadores, además de usarse para decodificar, son útiles para implementar funciones lógicas. Cada una de sus salidas es un minterm de una función de n variables. Aprovechando la entrada de habilitación que suelen tener, es posible aumentar el número de variables. En la figura 13 se usa un decodificador de 3 x 8 para implementar la función F(z, y, x) = 3 (1,3,6,7) Figura 12

Page 91: Módulo I. Desarrollo de habilidades del pensamiento lógico ...prouniversitarios.org/site/recursos/material-de-apoyo/tecnologias-de... · Módulo I. Desarrollo de habilidades del

Figura 13

Se ve la entrada E de habilitación. Si E = 0 el decodificador está habilitado, si E = 1, cualesquiera sean los valores de x, y, o z, ninguna salida se activará. La figura 14 muestra como obtener un decodificador de 4 x 16, partiendo de dos decodificadores 3 x 8.

Figura 14 Multiplexores

Disponen de m = 2n líneas de entrada (canales), una línea de salida y n líneas de selección. En función de las líneas de selección determina qué entrada aparece en la salida. La figura 15 indica la función de un multiplexor y la figura 16 el circuito de un multiplexor de 4 canales. Figura 15 Figura 16

Los multiplexores , además de multiplexar, pueden usarse eficazmente para implementar funciones lógicas. Supongamos que la función a implementar sea: F(a, b, c) = (0,1,5,6,7

Page 92: Módulo I. Desarrollo de habilidades del pensamiento lógico ...prouniversitarios.org/site/recursos/material-de-apoyo/tecnologias-de... · Módulo I. Desarrollo de habilidades del

Para implementar una función de 3 variables se necesita un multiplexor de 3 – 1 entradas de selección. Dos de las variables (por ejemplo a y b) se conectan a las líneas de selección. La tercer variable c, se conecta a los canales. A esta altura es conveniente contar con la tabla de verdad de la función, que en nuestro ejemplo es:

C B A F(a, b, c)

0 0 0 1

0 0 1 1

0 1 0 0

0 1 1 0

1 0 0 0

1 0 1 1

1 1 0 1

1 1 1 1

De la tabla de verdad de la función, se construye la siguiente tabla auxiliar:

B A F(a, b, c)

0 0 C’

0 1 1

1 0 C

1 1 C

Esta tabla auxiliar se obtiene de la anterior verificando cuanto vale la función para las diferentes combinaciones de a y b, y permite determinar qué valores conectar a los canales del multiplexor. Ver Figura 17. Figura 17

El procedimiento puede generalizarse para n variables, todas menos una se conectan a las líneas de selección del multiplexor. La restante a los canales de acuerdo a la tabla auxiliar. Figura 18

Page 93: Módulo I. Desarrollo de habilidades del pensamiento lógico ...prouniversitarios.org/site/recursos/material-de-apoyo/tecnologias-de... · Módulo I. Desarrollo de habilidades del

Para realizar multiplexores de muchos canales pueden combinarse diferentes multiplexores. Por ejemplo en la figura 18 de muestra un multiplexor de 32 canales a partir de dos de 16 canales y uno de dos canales. La entrada E (habilitación) es activa con un 0. Si E = 1, la salida del multiplexor es 0 independientemente del valor de las entradas. Demultiplexores

Cumplen la función opuesta a los multiplexores. Tienen una entrada y m salidas y n entradas de selección. La salida seleccionada tendrá el valor de la entrada. En la figura 20 se muestra un demultiplexor de cuatro canales de salida. Figura 19

El circuito de un demultiplexor es coincidente con un decodificador que posea entrada de habilitación. Por esta razón no se encuentran demultiplexores específicos. En la figura 20 se indica como obtener un demultiplexor de cuatro canales desde un decodificador de 2 x 4 con entrada de habilitación. Figura 20

Es usual encontrar en algunas familias lógicas multiplexores/demultiplexores. Estos circuitos pueden cumplir ambas funciones. Comparadores

Realizan la comparación entre dos números binarios de n bits. El circuito básico que realiza la comparación de 1 bit, se indica en la figura 21. Figura 21

Page 94: Módulo I. Desarrollo de habilidades del pensamiento lógico ...prouniversitarios.org/site/recursos/material-de-apoyo/tecnologias-de... · Módulo I. Desarrollo de habilidades del

Este circuito responde a la siguiente tabla de verdad: Figura 22

B A A > B A = B A < B

0 0 0 1 0

0 1 1 0 0

1 0 0 0 1

1 1 0 1 0

Comparadores de más bits se diseñan de la misma manera. Los Comparadores poseen además entradas por =, <, y >, esto permite realizar comparadores de elevado número de bits, partiendo de comparadores menores. Por ejemplo, en la figura 22 se muestra un comparador de 8 bits, partiendo de 2 comparadores de 4 bits. Detectores/generadores de paridad

Son CI capaces de generar/detectar la paridad de un conjunto de bits. En la figura 23 se muestra un generador/detector de paridad de 8 bits, su circuito, tabla de verdad y esquema del chip (se trata del 74180 de tecnología TTL). Figura 23

Las señales de control TO (paridad impar) y TE (paridad par) permiten seleccionar la paridad. Se recomienda al alumno obtener la tabla de verdad de este circuito y verificar su funcionamiento. Sumadores Son CI que realizan la suma aritmética de dos números de n bits. Antes de ver los sumadores disponibles en escala de integración MSI, estudiaremos la suma y resta binaria.

Page 95: Módulo I. Desarrollo de habilidades del pensamiento lógico ...prouniversitarios.org/site/recursos/material-de-apoyo/tecnologias-de... · Módulo I. Desarrollo de habilidades del

Suma binaria

Para indicar la suma aritmética utilizaremos el símbolo para diferenciarlo del + usado para la suma lógica. Para sumar dos bits, se puede implementar el circuito de la figura 24, llamado Semisumador. Figura 24

Cuya tabla de verdad es:

Bi Ai Si Ci+1

0 0 0 0

0 1 1 0

1 0 1 0

1 1 1 1

Supóngase ahora que se desea sumar dos números binarios de cuatro bits A y B, entonces: c4 c3 c2 c1 c0 A = a3 a2 a1 a0 B = b3 b2 b1 b0

S = s3 s2 s1 s0 Se observa que son necesarios cuatro circuitos, uno para cada columna, y cada uno debe ser capaz de sumar tres bits: ai, bi, y ci. Se implementa entonces el circuito de la figura 25, llamado Sumador Total. Figura 25

Cuya tabla de verdad es:

Ci Bi Ai Si Ci+1

0 0 0 0 0

0 0 1 1 0

0 1 0 1 0

0 1 1 0 1

1 0 0 1 0

1 0 1 0 1

1 1 0 0 1

1 1 1 1 1

La interconexión de cuatro Sumadores Totales permite obtener un Cuádruple Sumador Total, capaz de realizar la suma aritmética de dos números binarios de cuatro bits, ver figura 26

Page 96: Módulo I. Desarrollo de habilidades del pensamiento lógico ...prouniversitarios.org/site/recursos/material-de-apoyo/tecnologias-de... · Módulo I. Desarrollo de habilidades del

Figura 26

Resta binaria

Debe recordarse los convenios de representación de números negativos en binario. Se podría implementar un circuito para realizar la resta como una nueva operación. Sin embargo se verá que es posible restar dos números realizando la suma de uno de ellos mas el complemento a dos (o a uno) del otro. Para el caso de usar el convenio de complemento a dos. Sean A y B dos números binarios signados en convenio de complemento a dos, véase el siguiente desarrollo: A – B A + C2(B) = A + 2n – B = 2n + (A – B) En la expresión se observa que el resultado obtenido difiere del buscado en el valor 2n. Este resultado debe interpretarse como un acarreo a despreciar si el paréntesis ( A - B) resulta positivo. En caso que el paréntesis resulte negativo el resultado estará expresado en complemento a dos. Para el caso de usar complemento a uno Sean A y B dos números binarios signados en convenio de complemento a uno, véase el siguiente desarrollo: A – B A + C1(B) = A + 2n – 1 – B = 2n + (A – B) – 1 En la expresión se observa que el resultado obtenido difiere del buscado en el valor 2n y además tiene un error en defecto de valor 1. Este resultado debe interpretarse como un acarreo que debe sumarse al resultado si el paréntesis ( A - B) resulta positivo. En caso que el paréntesis resulte negativo el resultado estará expresado en complemento a uno. Es conveniente que el alumno verifique el párrafo anterior par todos los casos, es decir - A > 0 ; B > 0 - A > 0 ; B < 0 - A < 0 ; B > 0 - A < 0 ; B < 0 En la figura 27 se muestra un Sumador/restador en complemento a dos de 4 bits a partir de un Cuádruple. Figura 27

sumador total

Cuádruple Sumador

Total

c0 c4

A

B

S

B

Page 97: Módulo I. Desarrollo de habilidades del pensamiento lógico ...prouniversitarios.org/site/recursos/material-de-apoyo/tecnologias-de... · Módulo I. Desarrollo de habilidades del

Figura 28

En la figura 28 se muestra un Sumador/Restador de 4 bits en complemento a uno a partir de un cuádruple sumador total. En las dos últimas figuras aparece un circuito detecto de rebasamiento. Su salida será 1 si se ha rebasado al sumador y cero en caso contrario. Nótese que las entradas a este circuito son los bits de signo de los números de entrada y del resultado. Unidad Lógico – Aritmética (ALU) Son bloques funcionales en escala MSI que permiten realizar operaciones lógicas y aritméticas sobre números binarios (generalmente de 4 bits). La operación a realizar se selecciona colocando los valores adecuados en las líneas de selección. En la figura 29 se muestra una ALU típica de 4 bits. Figura 29

Estos bloques funcionales pueden conectarse en cascada para realizar operaciones sobre números de mayor número de bits

Page 98: Módulo I. Desarrollo de habilidades del pensamiento lógico ...prouniversitarios.org/site/recursos/material-de-apoyo/tecnologias-de... · Módulo I. Desarrollo de habilidades del

Sistemas Secuenciales Introducción

Son aquellos Sistemas Digitales cuyas salidas no sólo dependen de sus entradas en un momento dado, sino también de cómo han evolucionado estas anteriormente. El Sistema Secuencial tiene que ser capaz de memorizar la mencionada evolución. Puede decirse que las salidas de un Sistema Secuencial dependen de ellas mismas y de las entradas. Este concepto es equivalente al anterior y permite plantear un esquema general de Sistema Secuencial partiendo de un Sistema Combinacional realimentado (las entradas a este combinacional están formadas por variables independientes y además por una o más salidas del mismo. Lo mencionado puede verse en la figura 30. Figura 30 – Sistema Secuencial Asíncrono

Se observa un nuevo tipo de variables llamadas variables internas. El bloque M, indica un circuito capaz de mantener el estado de sus entradas en su valor, por un cierto tiempo. El alumno puede deducir que el sistema evolucionará entre distintos estados internos hasta arribar a un estado estable. Efectivamente, para un valor de las variables de entrada determinado, las salidas del combinacional adoptarán cierto estado, como algunas de ellas se realimentan, las salidas del combinacional cambiarán nuevamente. Este proceso (llamado evolución automática del sistema) se repetirá hasta tanto el valor de las variables internas coincida con el anterior, este es el estado estable. Si a las variables internas se las deja pasar de izquierda a derecha sólo en ciertos momentos, se obtiene un Sistema Secuencial Síncrono como se muestra en la figura 31. Figura 31 – Sistema Secuencial Síncrono

Page 99: Módulo I. Desarrollo de habilidades del pensamiento lógico ...prouniversitarios.org/site/recursos/material-de-apoyo/tecnologias-de... · Módulo I. Desarrollo de habilidades del

El diseño básico de estos sistemas consiste en plantear una tabla de verdad en la cual se tenga en cuenta el concepto tiempo. Ahora una función lógica no sólo depende de ciertas variables independientes sino que también depende de sí misma. Por ejemplo: p = f(a, b, c, ....., p, .....) Se observa que la función, indicada como p, aparece en ambos miembros de la expresión. Esto, para que no carezca de sentido, debe interpretarse de la siguiente manera: pt+1 = ft (a, b, c, ...., p, ....) El subíndice t+1 se interpreta como el valor que adoptará p para el conjunto de valores que tenían las variables de las cuales depende en el instante t. A fin de aclarar los conceptos anteriores, sea resolver el siguiente problema. Problema: Implementar un Sistema Digital para una alarma domiciliaria que posea: Dos variables de entrada: Variable S: entrada de sensor, proviene por ejemplo del sensor de una puerta, etc. Variable R entrada de inicialización. Una variable de salidas: Variable Q salida a la sirena El sistema deberá funcionar de la siguiente manera: Cuando la variable S tome el valor 1, se activará la salida ( Q = 1)y si ya estaba activada permanecerá en esa condición. La salida quedará activada aún cuando la variable S pase a 0. Cuando la variable R toma el valor 1, se desactivará la salida (Q = 0) y si ya estaba desactivada permanecerá en esa condición. La salida quedará desactivada aún cuando la variable R pase a 0 Nunca S y R podrán valer 1 simultáneamente. Se propone la siguiente tabla de verdad con el concepto de tiempo ya explicado: Figura 32

R S Qt Qt+1

0 0 0 0

0 0 1 1

0 1 0 1

0 1 1 1

1 0 0 0

1 0 1 0

1 1 0 X

1 1 1 X

Las entradas al combinacional serán las tres variables de la izquierda, las X indican que nunca se produce esa combinación de las variables de entrada, por lo tanto no importa el valor que adopte Q t+1. Para implementar el circuito se realiza el mapa de Karnaught para la función. Figura 33a para la función en minterms y figura 33b para la función en maxterms: Q t+1 = 3 (1 ,2 ,3 ,6 ,7) ó Q t+1 = 3 (0, 1, 2, 3, 7)

Page 100: Módulo I. Desarrollo de habilidades del pensamiento lógico ...prouniversitarios.org/site/recursos/material-de-apoyo/tecnologias-de... · Módulo I. Desarrollo de habilidades del

Las X corresponden a los minterms 6 y 7, y a los maxterms 0 y 1. Se ha decidido incluirlos en la expresión por cuanto podría obtenerse una minimización óptima.

Figura 33-a Figura 33-b De la figura 33-a, resulta Figura 34 (a) Circuito – (c) Biestable SR (NAND)

Qt+1 = S + Qt R’ = (S + Qt R’)’’ = (S’ (Qt R’)’)’ , cuyo circuito es el siguiente De la figura 33-b, resulta Qt+1 = R’ Qt + S = (R’ Qt + S)’’ = (R’ + (Qt + S)’)’, cuyo circuito es el siguiente: Figura 35 (a) Circuito – (c) Biestable SR (NOR)

Page 101: Módulo I. Desarrollo de habilidades del pensamiento lógico ...prouniversitarios.org/site/recursos/material-de-apoyo/tecnologias-de... · Módulo I. Desarrollo de habilidades del

Dos conceptos útiles I) Las compuertas lógicas reales se diferencian de las ideales en: a) Poseen un tiempo de retardo, es decir: la señal lógica tarda un tiempo no nulo para atravesar la compuerta. b) Disipan calor. La característica a) es de especial importancia en los Secuenciales. Efectivamente, en la figura 30 aparecen unos elementos M necesarios para que el secuencial funcione. Si estos elementos no estuvieran, una misma línea lógica debería tener dos estados a la vez y esto no es posible. Sin embargo en los biestables de las figuras 34 o 35, estos elementos M no aparecen. La razón por la cual funcionan es que están construidos con compuertas reales y el retardo propio de las mismas cumple la función de los elementos M. II) En una señal lógica se pueden indicar las siguientes partes:

Figura 36

Biestables

Como se vio en el problema anterior, los biestables son secuenciales que poseen dos estados estables, es decir que las variables internas pueden adoptar en este caso dos estados en los cuales permanecerán indefinidamente a menos que cambien las variables de entrada. Se trata entonces de los secuenciales más simples ya que poseen una sola variable interna. Los biestables representan los circuitos base para la construcción de secuenciales más complejos. Se puede clasificar a los biestables de la siguiente manera: Figura 37

Biestables asíncronos

Son aquellos en los cuales las entradas actúan directamente sobre el biestable. Son ejemplos de estos biestables los vistos en el problema de la alarma domiciliaria, figura 33 y figura 34 . Puede decirse que la tabla de verdad de la figura 32 es válida en todo momento. Biestables Síncronos

Estos biestables cuentan con una entrada adicional: La entrada de sincronismo o reloj. De acuerdo a cómo actúa esta señal, los biestables síncronos se dividen en activados por nivel, maestro – esclavo y activados por flancos.:

Flanco

s

Niveles

Señal

tiemp

o

BIESTABLE

S

ASÍNCRON

OS

SÍNCRON

OS

ACTIVADOS POR

NIVEL

MAESTRO -

ESCLAVO

ACTIVADOS POR

FLANCOS

Page 102: Módulo I. Desarrollo de habilidades del pensamiento lógico ...prouniversitarios.org/site/recursos/material-de-apoyo/tecnologias-de... · Módulo I. Desarrollo de habilidades del

Biestables Síncronos activados por nivel

Son aquellos biestables en los cuales la tabla de verdad es válida sólo en presencia de un nivel activo en la entrada de sincronismo. La figura 38 muestra un biestable SR síncrono por nivel Se observa que parte de un RS asíncrono y se le agrega un circuito de disparo. La fig. 38 (a), muestra un SR activado con nivel 1, y la fig. 38 (b), un SR activado con nivel 0. Figura 38

Biestables síncronos maestro – esclavo

Están formados por dos biestables activados por niivel. La fig. 39 muestra un biestable SR maestro esclavo. Figura 39

Se observa que mientras Ck = 1, se encuentra funcionando el primer biestable (maestro), en el momento que Ck = 0, la información del maestro pasa al esclavo. Este biestable actúa como si estuviera activado en el flanco de bajada de la señal de sincronismo, no obstante se diferencia de los activados por flancos en el hecho que las entradas actúan sobre el maestro durante el tiempo que Ck = 1. Biestables activados por flancos Es estos biestables las entradas actúan sólo en presencia de un flanco (de subida o bajada) en la entrada de sincronismo. La tabla de verdad será válida sólo en esos instantes. En la figura 40 se muestra un SR activado por flanco. Figura 40

Page 103: Módulo I. Desarrollo de habilidades del pensamiento lógico ...prouniversitarios.org/site/recursos/material-de-apoyo/tecnologias-de... · Módulo I. Desarrollo de habilidades del

Se trata de un SR síncrono por nivel al cual se le agrega un circuito detecto de flancos. En la figura 41, se muestra el símbolo utilizado para este tipo de biestable. Figura 41

La fig. 41 (a), muestra un SR sincronizado por flanco de subida. La fig. 41 (b), muestra un SR sincronizado por flanco de bajada. Todos los biestables SR tienen la misma tabla de verdad (figura 32), dependiendo de la clase de SR la tabla de verdad es válida siempre, durante el nivel activo o durante el flanco activo, según corresponda. Una forma reducida de indicar la tabla de verdad de un SR se indica en al figura 42. Figura 42

R S Qt+1

0 0 Qt

0 1 1

1 0 0

1 1 X

Tipos de biestables

Existen otros tipos de biestables diferentes al SR. Ellos son el biestable JK, el biestable T. Y el biestable D. Estos no se encuentran disponibles en todas las clases (asíncronos, síncronos por nivel, etc.) Las tablas de verdad son las indicadas en la figura 43 a, b y c

K J Qt+1

0 0 Qt

0 1 1

1 0 0

1 1 Q’t

(a) Biestable JK

T Qt+1

0 Qt

1 Q’t

(b) Biestable T

D Qt+1

0 0

1 1

(c) Biestable D Figura 43 – JK, T y D

Page 104: Módulo I. Desarrollo de habilidades del pensamiento lógico ...prouniversitarios.org/site/recursos/material-de-apoyo/tecnologias-de... · Módulo I. Desarrollo de habilidades del

Biestable JK: En la Tabla 43 (a), para J = K = 1, Q t+1 = Q’t , es decir la salida adopta el valor opuesto al anterior. Por esta razón sólo tienen aplicación práctica los biestables JK síncronos activados por flancos. En la figura 44 se muestran algunos biestables JK. Figura 44 a – Biestable JK Maestro – Esclavo a partir de dos SR

Figura 44 b – Biestable JK por flanco ascendente a partir de un SR

Biestables T: No están disponibles comercialmente. Se obtienen a partir de un biestable JK haciendo J=K=T. También pueden obtenerse a partir de un biestable D por flancos. Biestables D: En la figura 43 c se muestra la tabla de verdad de este biestable. Se concluye que carece de aplicación un biestable D asíncrono. Por lo tanto los biestables D se disponen comercialmente como síncronos, ya sea por nivel (D Latch), Maestro – Esclavo, o por flanco. Pueden obtenerse a partir de un SR síncrono, haciendo S = R’ = D. También de un JK, haciendo J = K’ = D. Ver figura 45 a y b. Figura 45

En cuanto al sincronismo, en la fig. 45 a, puede usarse un SR por nivel, maestro–esclavo o por flanco y resultare un D por nivel, maestro–esclavo o por flanco respectivamente. En la fig. 45 b, se supone un JK maestro-esclavo o por flanco.

Page 105: Módulo I. Desarrollo de habilidades del pensamiento lógico ...prouniversitarios.org/site/recursos/material-de-apoyo/tecnologias-de... · Módulo I. Desarrollo de habilidades del

Aplicaciones de los biestables

Los biestables son secuenciales básicos capaces de memorizar un bit. Existen infinidad de aplicaciones, entre las principales se encuentran: - Memorias, desarrolladas en la Unidad 4 - Registros - Contadores Registros Es un secuencial síncrono que almacena varios bits de información. El formato de la información puede ser de dos tipos: serie (cuando los bits se transfieren uno después del otro por la misma línea) o paralelo (cuando se transfieren simultáneamente). Los registros pueden clasificarse de la siguiente manera I) Registros de Desplazamiento - Entrada serie, salida serie - Entrada serie, salida paralela - Entrada paralela, salida serie II)Registros propiamente dichos (o sólo Registros) - Entrada paralela, salida paralela Registros de desplazamiento Estos registros, si la cantidad de bits almacenados en grande (principalmente serie – serie), se incluyen en la Unidad 4 . Si se trata de algunos bits, ver las figuras 46 y 47. Figura 46 – Registro de desplazamiento de cuatro bits serie - serie

Figura 47 – Registro de desplazamiento paralelo – serie de cuatro bits

Page 106: Módulo I. Desarrollo de habilidades del pensamiento lógico ...prouniversitarios.org/site/recursos/material-de-apoyo/tecnologias-de... · Módulo I. Desarrollo de habilidades del

Registros propiamente dichos

Consisten en un conjunto de biestables sincronizados por nivel o por flancos cuyas entradas de sincronismo se encuentran unidas. Son de uso extensivo en cualquier sistema digital. En la figura 48 se muestra un registro de 8 bits cuyas salidas están provistas de inversores tri-estado a fin de conectarse a un bus. Figura 48 – Registro paralelo – paralelo de 8 bits

Transferencias entre registros

Buena parte de la actividad de un Sistema Digital es la transferencia de los contenidos entre distintos registros. En la Unidad 5 se presenta una computadora elemental y su funcionamiento se basa en la transferencia entre registros. Los Lenguajes de Programación de Hardware permiten diseñar sistemas digitales basándose en la transferencias entre registros. Es común ver estructuras en las cuales aparece un bus (conjunto de líneas lógicas que transporta información) del cual se encuentran “colgados” registros. Estos registros pueden actuar como elementos de interconexión entre el bus y distintas unidades funcionales, o bien ser registros de almacenamiento temporario de información exclusivamente. En la figura 49a se presenta una forma de interconexión entre registros llamada BUS COMÚN, se trata de tres registros de dos bits cada uno. Las entradas de algunos de estos registros podrían estar conectadas a una Unidad Funcional (ALU por ejemplo) funcionando en este caso como registro de salida de la misma; o bien las salidas de alguno de los registros podrían estar conectadas a otra Unidad Funcional (Unidad de Memoria por ejemplo) funcionando en este caso como registro de entrada a la misma. En la figura 49b se indica cómo deberían ser las señales de control para llevar a cabo la transferencia entre registros. Estas señales de control son generadas en general por la Unidad de Control del Bus; y, de su eficiencia, depende en gran medida la perfomance (velocidad de procesamiento) del Sistema Digital.

Page 107: Módulo I. Desarrollo de habilidades del pensamiento lógico ...prouniversitarios.org/site/recursos/material-de-apoyo/tecnologias-de... · Módulo I. Desarrollo de habilidades del

Figura 49a

Otra forma de construir un sistema de interconexión entre registros es usando registros con salida tri-estado (como el indicado en la figura 48). Un ejemplo puede apreciarse en la figura 49c. Figura 49c

En la figura se aprecian tres registros con salida tri-estado. Cada registro, además de dos entradas y dos salidas de información, poseen dos entradas de control: Enable y Control de salida. Estas son manejadas por la Unidad de Control del Bus y por las Unidades Funcionales. Supóngase por ejemplo que la Unidad Funcional I ya ha procesado una información y en necesario transferirla al Registro C para que, finalmente, sea procesada por la Unidad Funcional II. Para este ejemplo la Unidad de Control del Bus deberá realizar lo siguiente: Recibir desde la Unidad Funcional I la señal de listo (La Unidad Funcional I una vez que dispone de la información, la carga en el Registro A con Enable A y luego envía la señal listo a la Unidad de Control del Bus). Activar la señal: Salida Control A, con lo cual vuelca al bus el contenido del Registro A. Activar la señal: Enable C, a fin de cargar el Registro C con la información presente en el Bus. Desactivar las señales: Salida Control A y Enable C. Indicar a la Unidad Funcional II que ,en el Registro C, existe información a procesar. La Unidad Funcional II, al recibir la señal de la Unidad de Control del Bus, lee el contenido del Registro C mediante la señal Salida de Control C. De lo visto se puede intuir la importancia de Bus en los Sistemas Digitales. En la Unidad 5 se desarrolla un Sistema Digital basado en la estructura de Von Newman en el que considera al Bus como una unidad en sí mismo.

Enviar

A

Cargar C

Figura

49b

Page 108: Módulo I. Desarrollo de habilidades del pensamiento lógico ...prouniversitarios.org/site/recursos/material-de-apoyo/tecnologias-de... · Módulo I. Desarrollo de habilidades del

Contadores

Es un sistema secuencial formado por biestables y lógica combinacional, capaz de almacenar en binario u otro código, la cantidad de impulsos recibidos por su entrada de cuenta. Puede aplicarse como divisor de frecuencia, control de tiempos, generador de direcciones en sistemas de memoria, secuenciador en unidades de control, etc. Contadores Asíncronos

Son secuenciales síncronos formados por un conjunto de biestables síncronos por flancos. Su denominación de asíncrono no se refiere al tipo de secuencial sino al hecho que las entradas de sincronismo de sus biestables no están unidas entre sí. Por lo general la salida de un biestable sirve como entrada de sincronismo del siguiente. En la figura 50 se muestra un contador binario de 4 bits asíncrono, obsérvese que las salidas de los biestables se conectan a las entradas de sincronismo del siguiente. También puede verse el diagrama de tiempo de estecontador. Figura 50 – Contador asíncrono de 4 bits. (a) Diagrama circuital (b) Diagrama de tiempo

Contadores Síncronos

Son similares al los anteriores sólo que comparten la misma señal de reloj. Son más rápidos y complejos que los asíncronos. En la figura 51 se muestra un contador binario natural síncrono de 4 bits. Nótese que, a diferencia de la figura 50, este contador tiene todas las entradas de sincronismo de los biestables unidas. Además es más complejo puesto que tiene más compuertas que el anterior. Figura 51 – Contador binario natural de 4 bits síncrono.

El diseño de contadores se realiza planteando una tabla de verdad temporal y luego de obtener las funciones correspondientes, se minimizan teniendo en cuenta el biestable elegido. Los biestables utilizados en los contadores como así también en los registros de desplazamiento, son biestables síncrono maestro – esclavo o activados por flancos.

Page 109: Módulo I. Desarrollo de habilidades del pensamiento lógico ...prouniversitarios.org/site/recursos/material-de-apoyo/tecnologias-de... · Módulo I. Desarrollo de habilidades del

Telecomunicaciones 3.5 Estructura de datos 3.6 Aplicación de tecnologías de la información 3.6.1 Animación por computadora

Animar es un proceso creativo. La tecnología sólo nos ayuda a plasmar esa creatividad, movimiento, expresión, peso, timing... Los aspectos básicos siguen siendo los mismos que hace 50 años en animación tradicional, la animación es el arte, los ordenadores son sólo el medio En la última década del Siglo XX el mundo de la animación ha recibido importantes aportaciones gracias a nuevas herramientas con las que realizar la ilusión del movimiento. La aparición de los gráficos generados por ordenador supuso, no sólo un nuevo soporte y nuevas herramientas, sino un nuevo espacio de trabajo sobre el que se han desarrollado multitud de nuevas técnicas de animación. Animación digital por claves e interpolación

De entre todas las nuevas aportaciones que las de las técnicas digitales incorporan en el arte de la animación, quizás el que mayor brecha genera entre la animación tradicional y la digital sea el concepto de interpolación. Este concepto, que se desarrollará ampliamente en sucesivos puntos, cambia por completo el proceso de creación de fotogramas y por tanto el flujo de trabajo del animador. La interpolación digital es un proceso por el cual un elemento colocado en dos posiciones distintas en dos momentos diferentes de la línea temporal de la animación, no necesita de dibujos intermedios para visualizar el movimiento de una posición a la otra. El movimiento entre la primera posición y la segunda es generado de manera automática por el software de animación. Este movimiento se interpol por tanto de una posición a la otra. La técnica de la interpolación revolucionó el proceso industrial de la animación y acercó la posibilidad de trabajar proyectos de envergadura desde equipos de animadores menos numerosos. Gracias a la posibilidad de trabajar con un mismo elemento colocado en diferentes posiciones y que los movimientos intermedios se generen automáticamente, la calidad del dibujo se vuelve muy superior ya que no es necesario redibujar el personaje para cada fotograma. De este proceso se extrae el flujo de animación por claves, en las que el animador sólo tiene que posicionar los personajes en sus poses principales. Cartoon animation vs personajes virtuales

Por otro lado la técnica digital ha conquistado el espacio tridimensional llegando a integrar con impecable realismo el movimiento humano en la animación. Gracias a la animación 3D y la captura de movimiento el animador deja de controlar totalmente la personalidad de los personajes y trabaja sobre la base de verdaderos actores que prestan sus movimientos e interpretaciones. Animación digital con anidamiento y lógica

Otra aportación sumamente importante de la técnica digital al mundo de la animación es la capacidad de romper con el flujo de tiempo lineal de la animación clásica. Hasta el momento la animación se había generado fotograma a fotograma a fotograma en una secuencia que delimitaba perfectamente su inicio y su fin. Aparición de nuevas técnicas de animación

Por último, la irrupción de las técnicas digitales en el ámbito de la animación trae consigo la aparición de nuevas técnicas asociadas al mundo tecnológico. Técnicas como la captura de movimiento, citada anteriormente, nacen del concepto de digitalización de movimientos reales, otras como el cut-out digital reinterpretan técnicas clásicas desde la potencia y solvencia del entorno digital. El cut-out digital reinventa la manera clásica de animar en stop motion personajes fraccionados., fusionando las técnicas de animación 2D clásica con elementos de animación 3D, como los sistemas de huesos. La aparición de los gráficos vectoriales, definidos mediante atributos matemáticos de forma, posición y color, hace posible que técnicas como el cut-out digital o el 2D digital puedan animarse mediante interpolaciones en las que los elementos son reconocibles por el programa. La animación de gráficos vectoriales asegura la máxima calidad de éstos en cualquier circunstancia ya que al ser definidos mediante atributos matemáticos no existe pérdida de calidad. No obstante, la simplicidad con la que han de ser definidos los gráficos vectoriales limita en cierto modo la riqueza visual de los dibujos clásicos o generados por imágenes. De la mano de la aparición del espacio 3D y los gráficos vectoriales surgen nuevas técnicas como el motion graphics que mezcla estos elementos en un nuevo espacio escénico que se sitúa entre las dos y tres dimensiones. En el motion graphics se conjugan elementos visuales de diversos orígenes con fragmentos de vídeo que se desplazan rítmicamente por la escena.

Page 110: Módulo I. Desarrollo de habilidades del pensamiento lógico ...prouniversitarios.org/site/recursos/material-de-apoyo/tecnologias-de... · Módulo I. Desarrollo de habilidades del

Los principios de animación en las técnicas digitales Animación 3D

La técnica de la animación de formas 3D tiene hoy en día un papel sumamente importante en el mundo de la animación. Desde su aparición en los años ochenta, la técnica se ha ido depurando, y al mismo tiempo fusionando con otras técnicas para crear complejos procesos capaces de llegar a un grado de absoluto realismo en la imagen. El rango estético que abarca la técnica de la animación 3D es amplísimo y engloba estilos artísticos tan diferentes como los dibujos animados, la imagen realista o los videojuegos. En la actualidad las herramientas para la técnica de la animación 3D se componen de complejos programas que, salvo algunos casos, no se limitan exclusivamente a la técnica de la animación sino que abarcan el proceso completo de creación de la imagen 3D, esto es desde su modelado, texturizado, riggeado, setup hasta su animación, iluminación y posterior renderizado o exportación. Existen dos grandes programas comerciales que concentran el mayor número de usuarios, 3Ds Max y Maya. Estos dos programas son en la actualidad propiedad de la empresa estadounidense Autodesk Inc, que se ha erigido como uno de los gigantes mundiales en el sector del software de creación de gráficos 2D y 3D. Aunque Autodesk vende el software Maya como especializado en animación, 3Ds Max es completamente capaz de llevar a cabo los mismos procesos que Maya, aunque con discutibles diferencias en el flujo de trabajo. Según expertos en productos Autodesk de animación, en la actualidad Maya ocupa un mayor número de producciones cinematográficas y 3Ds Max se concentra en animación de videojuegos, tv y producciones concretas de cine. En España, en concreto, el auge de las producciones cinematográficas 3D que se está produciendo en los últimos 10 años se ha servido de 3Ds Max para su realización. Ejemplos de estas producciones son Tadeo Jones (2012,Enrique Gato) o Planet 51 (2009, Jorge Blanco, Javier Abad, Marcos Martínez).

Al analizar las capacidades cinematográficas de las que se sirve la animación 3D, se puede observar que éstas tienen su origen en un cambio de paradigma a la hora de plantear el espacio escénico. Al no existir prácticamente dependencia del dibujo, como ocurría en la animación americana de los años 40 y 50, el nuevo espacio digital se configura libremente, visualizando en todo momento el resultado de colocar la cámara desde determinado punto de vista, aportando esta versatilidad a través de las nuevas tecnologías de la información. .

Page 111: Módulo I. Desarrollo de habilidades del pensamiento lógico ...prouniversitarios.org/site/recursos/material-de-apoyo/tecnologias-de... · Módulo I. Desarrollo de habilidades del

3.6.2 Realidad virtual

Definición y conceptos básicos

A pesar de que en la literatura se pueden encontrar muchas definiciones de realidad virtual (en inglés, virtual reality VR), seguramente una de las más completas es la que propuso A. Rowell: “La Realidad Virtual es una simulación interactiva por computador desde el punto de vista del participante, en la cual se sustituye o se aumenta la información sensorial que recibe”. En esta definición aparecen los elementos básicos que tienen que estar presentes en todo sistema de realidad virtual y que se discuten a continuación: Simulación interactiva Interacción implícita Inmersión sensorial Simulación interactiva

Una aplicación de realidad virtual es una simulación en el sentido de que se recrea un mundo virtual que sólo existe como una representación digital en la memoria de un ordenador. El hecho de que la simulación sea interactiva es lo que distingue la realidad virtual de una animación. En una animación, al igual que en el cine, los espectadores son individuos pasivos en el sentido que no pueden alterar el contenido de las imágenes que ven: éstas han sido grabadas previamente desde un determinado punto de vista o siguiendo una determinada trayectoria. En cambio, en un sistema de realidad virtual, el usuario puede escoger libremente su movimiento por la escena y, por tanto, sus acciones afectan de forma directa a las imágenes que verá. Además, el usuario puede improvisar su movimiento sobre la marcha, sin necesidad de tener que establecer un guión previo, pues el sistema de realidad virtual responderá en tiempo real (es decir, con un tiempo de respuesta despreciable) a sus acciones. Dado que la trayectoria que seguirá el participante es imprevisible, y que hay infinitos puntos de vista diferentes, los sistemas de realidad virtual requieren tener una representación geométrica 3D del entorno virtual, de forma que puedan calcular la imagen correspondiente a un punto de vista arbitrario. Además de este modelo geométrico, los sistemas de realidad virtual también requieren utilizar algoritmos de visualización realista (algoritmos de síntesis de imágenes) para poder generar las imágenes a partir de estas representaciones digitales de la escena. Interacción implícita

La realidad virtual utiliza la interacción implícita en contraposición a la interacción explícita o interacción clásica. En la interacción clásica, cuando un usuario quiere llevar a cabo una determinada acción (pongamos que quiere ver la parte del mundo virtual que tiene detrás) tiene que comunicar de forma explícita su voluntad al computador. Para esta tarea, el usuario utiliza el esquema de comunicación determinado por la interfaz de la aplicación, ya sea una interfaz basada en comandos o una interfaz gráfica de tipo W. I. M. P. (window-icon

Page 112: Módulo I. Desarrollo de habilidades del pensamiento lógico ...prouniversitarios.org/site/recursos/material-de-apoyo/tecnologias-de... · Módulo I. Desarrollo de habilidades del

menu-pointing device), que es como se denominan los sistemas basados en ventanas e íconos. En cualquiera de estos casos, el usuario tiene que realizar un pequeño esfuerzo, para recordar o buscar el comando o el elemento gráfico asociado a la acción que quiere realizar, y debe hacer llegar al ordenador esta orden a través de los dispositivos de interacción clásica, fundamentalmente el teclado y el ratón. A pesar que de en los últimos años las interfaces gráficas en mejorado mucho la comunicación del hombre con el computador, la comunicación de acciones repetidas (como la trayectoria que quiere seguir el usuario) no deja de suponer un esfuerzo, y normalmente requiere de un cierto tiempo de entrenamiento o formación. En cambio, en la realidad virtual el sistema captura la voluntad del usuario implícita en sus movimientos naturales. El ejemplo más claro es el control de la cámara virtual: en un sistema de realidad virtual, la cámara se actualiza en función de los movimientos de la cabeza del usuario. Si el usuario quiere ver la parte de mundo virtual que tiene detrás, no tiene que utilizar ningún comando ni mover el ratón, sino que simplemente sino que simplemente debe hacer el mismo gesto natural (girar la cabeza) que haría en el mundo real. Otro ejemplo es la interacción con los objetos de la escena. Si el usuario quiere abrir una puerta o mover un objeto, lo único que tiene que hacer es coger la puerta o el objeto y llevar a cabo con la mano los mismos movimientos que haría con un objeto real. Como podemos ver, tanto en interacción clásica como en interacción implícita se utilizan dispositivos periféricos para la entrada de datos, pero la diferencia fundamental es la percepción que tiene el usuario de estos dispositivos. La revolución de la realidad virtual en la interacción hombre-máquina radica en que el usuario deja de percibir los dispositivos (incluso deja de percibir el propio ordenador) para pasar a interactuar directamente con los objetos de la escena. La diferencia psicológica es que el usuario deja de mirar por una ventana y pasa a estar dentro del entorno virtual. Inmersión sensorial

El tercer elemento fundamental de todo sistema de realidad virtual es la inmersión sensorial. La palabra inmersión tiene significados muy variados según el contexto en que se utilice, pero en realidad virtual es un concepto muy claro. Podemos definir la inmersión sensorial como la desconexión de los sentidos del mundo real y la conexión al mundo virtual. Como consecuencia, el usuario deja de percibir el entorno que le rodea y pasa a estar inmerso dentro del mundo virtual que recrea el computador en tiempo real. De los diferentes órganos de los sentidos, la vista es el que nos proporciona una mayor cantidad de información y a la vez es la que da una mayor sensación de presencia. Por este motivo, todo sistema de realidad virtual debe proporcionar estímulos adecuados como mínimo para el sentido de la vista (es decir, debe generar las imágenes correspondientes al mundo virtual), a pesar de que a menudo los sistemas de realidad virtual proporcionan también inmersión acústica. A menudo se dice que un sistema de realidad virtual crea el efecto de que los objetos del entorno virtual existen con independencia del dispositivo de visualización. Cuando miramos un modelo en una pantalla de un computador (sin realidad virtual), claramente distinguimos que los objetos están proyectados en la superficie de la pantalla, y no tenemos ninguna sensación que estos objetos tengan una existencia material, por más realista que sean las imágenes. En cambio, la utilización de los dispositivos de visualización de realidad virtual crea en el usuario el efecto que los objetos no están proyectados en ninguna superficie, sino que se encuentran a diferentes distancias “flotando” en el espacio que envuelve al observador, como si tuviesen existencia material propia. La clave de este proceso es la visión estereoscópica. La visión estereoscópica se basa en proporcionar dos imágenes ligeramente diferentes del mundo virtual, una por cada ojo, de forma que el sistema visual humano deduce la profundidad de los objetos a partir de las diferencias en las imágenes. La visión estereoscópica es un elemento imprescindible en todo sistema de realidad virtual, pues es el único medio para hacer que los objetos tengan una fuerte presencia espacial. La visión estereoscópica también es una herramienta muy útil para aplicaciones que no se pueden considerar de realidad virtual, ya que permite ubicar espacialmente los objetos de forma mucho más precisa, gracias a que la escena se percibe en relieve.

Page 113: Módulo I. Desarrollo de habilidades del pensamiento lógico ...prouniversitarios.org/site/recursos/material-de-apoyo/tecnologias-de... · Módulo I. Desarrollo de habilidades del

Componentes de un sistema de realidad virtual

En un sistema de realidad virtual se pueden distinguir los siguientes elementos de hardware software: Periféricos de entrada (sensores) Periféricos de salida (efectores) Computador Modelo geométrico 3D Software de tratamiento de datos de entrada Software de simulación física Software de simulación sensorial El uso habitual de los posicionadores en realidad virtual es para capturarlos movimientos de la cabeza del participante, lo que nos permite generar las imágenes de acuerdo con su punto de vista. También es frecuente registrar los movimientos de la mano para permitir al usuario interactuar con los objetos de la escena de forma natural. Acciones como coger o mover objetos de la escena se pueden realizar de forma mucho más intuitiva mediante un reconocimiento de los movimientos del participante. Algunos sistemas inmersivos utilizan una representación virtual del cuerpo del participante (denominada avatar) que se obtiene mediante un conjunto de sensores situados en determinadas articulaciones clave del participante. En este caso, normalmente se escoge un conjunto reducido de articulaciones y puntos clave (como por ejemplo pies, tobillos, rodillas, codos, hombros, etc.) a partir de los cuales se reconstruye el cuerpo completo. Estos sensores también se utilizan para obtener los movimientos del usuario en aplicaciones que no son de realidad virtual. Es el caso del análisis de los movimientos de los deportistas de alta competición que llevan a cabo algunas aplicaciones usadas por los centros de alto rendimiento, así como las secuencias de movimientos que se capturan a partir de un actor real y que se aplican a un carácter virtual. De esta forma se puede conseguir que el actor virtual haga unos movimientos mucho más complicados y realistas de los que se podrían conseguir con otros métodos. Esta técnica se utiliza actualmente en muchos juegos y también en dibujos animados. Bibliografía

Amidi, A. (2011). The art of Pixar: The complete colorscripts and select art from 25 years of animation. San Francisco: Chronicle Books. Anima Mundi y Wiedemann, Julius (2004 ) Animation now. London: Taschen. Anojin, P.K. (1968). Biología y Neurofisiología del reflejo condicionado. Moscú. Medicina. Arias, A ((2007). “Disney tenemos un problema” en Revista Latente: pg 205-215.

Page 114: Módulo I. Desarrollo de habilidades del pensamiento lógico ...prouniversitarios.org/site/recursos/material-de-apoyo/tecnologias-de... · Módulo I. Desarrollo de habilidades del

Módulo IV. Programación orientada a objetos. Programación de sistemas 4.11. Metodología de la programación Lenguajes de programación Definición de lenguaje de programación

Un lenguaje de programación es una notación constituida por símbolos y reglas que permite escribir programas. Todo lenguaje de programación está compuesto por su sintaxis (reglas) y su semántica (significado de los símbolos y las palabras que utiliza). A través de los lenguajes de programación es posible establecer una comunicación sistematizada y precisa con una computadora. Tipos de lenguaje

Lenguaje absoluto o de máquina Es el lenguaje nativo de una unidad de procesamiento central (CPU o procesador). Está compuesto por instrucciones que la máquina entiende directamente y que se expresan en términos de la unidad de memoria más pequeña: el bit (código binario 1 o 0). En esencia, una instrucción es una secuencia de bits que especifican una operación y las celdas de memoria implicadas.

Un lenguaje orientado a la máquina presenta las siguientes ventajas: No necesita traducción. Se aprovecha toda la capacidad de la computadora (uso de la memoria). El tiempo de acceso es menor. Desventajas: Es difícil de escribir y entender. Su escritura toma mucho tiempo. Dado que es un lenguaje expresado en unos y ceros, se corre un riesgo grande de cometer errores. Lenguaje simbólico Es aquél en el cual las instrucciones o sentencias son escritas con palabras similares a las de los lenguajes humanos. Están compuestos por símbolos, letras y números. Por ejemplo:

Los lenguajes simbólicos están orientados al programador y presenta las siguientes ventajas: Se entienden y escriben fácilmente. Disminuye la probabilidad de cometer errores. Escribir en lenguajes simbólicos toma menos tiempo. Son independientes de la plataforma y, por tanto, pueden usarse en distintas plataformas. Desventajas: Para que la máquina los entienda deben ser traducidos. Su tiempo de ejecución es mayor Programa Definición de programa Un programa es una secuencia lógica de instrucciones escritas en un determinado lenguaje de programación que dicta a la computadora las acciones que debe llevar a cabo. Una instrucción es una orden que se le da a la máquina para que ejecute una acción. Está compuesta por dos partes: operando y operador. El operador indica el tipo de operación a realizar sobre los datos; el operando es el conjunto de valores con los que el operador va a trabajar.

Page 115: Módulo I. Desarrollo de habilidades del pensamiento lógico ...prouniversitarios.org/site/recursos/material-de-apoyo/tecnologias-de... · Módulo I. Desarrollo de habilidades del

El término secuencia lógica se refiere al orden de ejecución de cada instrucción del programa.

Las secuencias pueden ser de dos tipos:

Secuencia lógica lineal. Las instrucciones se ejecutan en el orden en que aparecen, sin bifurcaciones, decisiones ni instrucciones repetitivas. Secuencia lógica no lineal. Contiene instrucciones de bifurcación que permiten dar saltos hacia delante o hacia atrás dentro del programa. Tipos de Programa De acuerdo con su función, pueden considerarse dos grandes tipos de programas: Programa fuente. Es un programa escrito en un lenguaje de programación generalmente simbólico que el programador desarrolla. Para que la computadora pueda ejecutarlo, primero debe ser traducido (compilado). Algunos ejemplos de programas fuentes son los escritos en C, C++, JAVA, Pascal o Visual Basic. Programa objeto: Son los programas compuestos por unos y ceros, producto de la compilación de programas fuente. Es el programa que la máquina puede entender directamente. Procesadores de lenguajes Un procesador de lenguajes es el software que traduce los programas fuentes escritos en lenguajes de programación de alto nivel a código de máquina. Los procesadores de lenguaje pueden ser compiladores o intérpretes. Compilador

Es un programa, suministrado por el fabricante del lenguaje, cuyo objetivo es convertir el programa fuente en un programa objeto. El compilador realiza las siguientes funciones: Traduce las instrucciones del programa fuente. Asigna áreas y direcciones de memoria. Suministra constantes y otros datos. Produce un diagnóstico de errores. Genera el programa objeto. La compilación es, entonces, el proceso mediante el cual la computadora traduce las instrucciones escritas por el programador (programa fuente) a instrucciones escritas en el lenguaje propio de la máquina (programa objeto) . Existen tantos compiladores como lenguajes hay; por ejemplo: compiladores para C++, C, Visual Basic, Pascal, etcétera.

Page 116: Módulo I. Desarrollo de habilidades del pensamiento lógico ...prouniversitarios.org/site/recursos/material-de-apoyo/tecnologias-de... · Módulo I. Desarrollo de habilidades del

Todo programa fuente debe ser traducido a programa objeto para que pueda ser ejecutado por la computadora. Intérprete

Es un programa que va leyendo poco a poco el código que el programador escribe y va traduciéndolo y ejecutándolo según se traduce. En estos casos no hay una traducción completa, ya que no se genera un programa directamente ejecutable. Éste permite al programador ejecutar interactivamente las diferentes secciones del programa, en vez de esperar a que todo el programa sea traducido y probado, como lo haría con un lenguaje compilado. Los lenguajes interpretados son menos eficientes que los compilados.

Los siguientes son ejemplos de intérpretes: Lisp, Smalltalk y Prolo Lenguajes interpretados Existen lenguajes que utilizan mecanismos tanto de compilación como de interpretación; por ejemplo, Visual Basic y JAVA. En el caso de JAVA, existe una “compilación” inicial donde el compilador traduce el código fuente a bytecode. El bytecode no es el programa objeto de ninguna CPU; más bien es un código intermedio que será posteriormente interpretado (leído y ejecutado) por la máquina.

Antecedentes de la programación orientada a objetos (POO)

La POO es una metodología para el desarrollo lógico de programas que se remonta a la década de 1960. Sus conceptos fundamentales ya existían en lenguajes como Simula (desarrollado en 1967) y Smalltalk (que data de la década de 1970). A finales de la década de 1960 y principios de la de 1970 surgió una crisis de software derivada, por un lado, de la dificultad de cambiar y modificar los grandes y complejos programas existentes, y por otro, de la disminución de programadores dispuestos a dar mantenimiento a los programas. Esto trajo consigo la introducción de una nueva metodología de desarrollo denominada programación estructurada, mediante la cual se descompone en procedimientos individuales (funciones) a los programas. Un procedimiento realiza una tarea específica (esto es una abstracción funcional): este concepto constituye la base sobre el cual trabaja la

Page 117: Módulo I. Desarrollo de habilidades del pensamiento lógico ...prouniversitarios.org/site/recursos/material-de-apoyo/tecnologias-de... · Módulo I. Desarrollo de habilidades del

programación estructurada. En un programa estructurado, cada procedimiento debe realizar una tarea específica; cómo se realiza la tarea no es tan importante, pues mientras el procedimiento sea fiable, se puede utilizar. En la programación estructurada es crítica la coordinación entre los desarrolladores implicados en el proyecto, pues dado que cada uno de ellos estará manipulando funciones separadas que pueden referirse a tipos de datos mutuamente compartidos, los cambios de un desarrollador deben reflejarse en el trabajo del resto del equipo. Una debilidad de la programación estructurada es la separación conceptual de datos y código; esto se agrava a medida que el programa crece y se hace más complejo. Actualmente, las sofisticadas interfaces de usuarios, los sistemas de ventanas, los programas multitareas, entre otros elementos, hacen más compleja la manipulación de las relaciones existentes entre los componentes de software. Por tanto, se requiere de una nueva técnica que mejore las limitaciones de los sistemas anteriores. La programación orientada a objetos no es la solución definitiva, pero permite construir programas complejos a partir de entidades de software más simples llamadas objetos, que son instancias reales o muestras de clases, lo cual permite heredar datos y códigos de aplicaciones existentes. Esto mejora la productividad del programador y facilita la extensión y la reutilización de clases en otras aplicaciones con mínima modificación al código original. Así como la programación estructurada o procedural se construye alrededor de funciones, la programación orientada a objetos se construye alrededor de clases. ¿Existe alguna relación entre ambas? Sí: las clases que hacemos son construidas usando elementos de la programación estructurada, llamadas funciones (lo que en POO llamamos métodos). Definición

La programación orientada a objetos se puede definir como una técnica o estilo de programación que utiliza objetos como bloques esenciales de construcción. Los elementos básicos de la POO son: objetos, mensajes, métodos y clases. La POO es una extensión natural de la actual tecnología de programación y representa un enfoque relativamente nuevo y distinto al tradicional. En la POO, los objetos son los elementos principales de construcción, pero simplemente comprenderlos o usarlos dentro de un programa, no significa que se esté programando en un modo orientado a objetos. Los objetivos de esta modalidad de programación son el mejoramiento de la productividad del programador por medio del manejo de la complejidad del software a través del uso de clases y sus objetos asociados. Características de la programación orientada a objetos La potencia real de los objetos reside en sus propiedades: abstracción, herencia y polimorfismo. Abstracción

Abstracción de datos. Es la capacidad de crear tipos de datos definidos por el usuario. Es una definición de tipo que incluye datos y funciones (métodos) en una sola estructura definida llamada clase. La abstracción de datos es un concepto fundamental en el diseño de un programa, pues permite definir el dominio y la estructura de los datos (atributos), junto con una colección o conjunto de operaciones que tienen acceso a los mismos (métodos). La abstracción permite no preocuparse de los detalles accesorios, y generalizar y centrarse en los aspectos que permiten tener una visión global del problema. La abstracción y el encapsulamiento están íntimamente relacionados con la clase. El propósito de encapsular una definición de tipo de dato es imposibilitar el acceso a los componentes de los objetos. Equivale a empacar datos y/u operaciones dentro de una sola unidad de programación bien definida. El ocultamiento de información implica que los módulos se caractericen por especificaciones de diseño que los hacen independientes. Este ocultamiento se logra definiendo un objeto como parte privada y proporcionando mensajes para invocar el proceso adecuado; es decir, se dejan ocultos al resto de los elementos del programa los detalles de implementación del objeto. Mediante el ocultamiento se restringe el acceso a datos y métodos a partir de los objetos, dependiendo de los modificadores de acceso públicos, privados o protegidos especificados para la clase correspondiente y a los cuales tenga acceso el objeto. El encapsulamiento y ocultamiento de información no son elementos separados: el segundo es consecuencia del primero, porque al tener los datos y procedimientos en un módulo, la información allí contenida queda empacada y oculta de cualquier manipulación inconveniente, lo cual permite tener datos seguros y confiables que podrán ser manejados sólo si el objeto lo permite. En síntesis: La abstracción es un nuevo tipo de dato definido por el programador; está compuesto por atributos (identificadores o datos) y métodos o acciones que se realizan sobre los atributos, definidos en una sola estructura llamada clase.

El encapsulamiento permite concebir al objeto como una caja negra en la que se ha introducido toda la información relacionada con dicho objeto (tanto los datos que almacena el objeto como los métodos que permiten manipularlos); mediante el ocultamiento se restringe el acceso a los datos y a los métodos a partir de los objetos.

Page 118: Módulo I. Desarrollo de habilidades del pensamiento lógico ...prouniversitarios.org/site/recursos/material-de-apoyo/tecnologias-de... · Módulo I. Desarrollo de habilidades del

Herencia

Según Luis Joyanes (1998), la herencia “Es la capacidad para crear nuevas clases de objetos que se construyen basados en clases existentes”. La herencia es una propiedad que permite a un objeto poseer propiedades de otras clases. Además, a estos nuevos objetos creados es posible asignarles nuevos atributos y métodos. La clase que puede ser heredada se denomina clase base (superclase) y la clase que hereda se denomina clase derivada (subclase).

Polimorfismo

Polimorfismo proviene de dos raíces griegas: poli, múltiples y morfismo, formas. Esta característica es la capacidad que objetos similares tienen para responder de diferentes formas al mismo mensaje, y permite al programador implementar múltiples formas de un mismo método, dependiendo cada una de ellas de la clase sobre la que se realice la implementación. Esto permite acceder a varios métodos distintos utilizando el mismo medio de acceso (el mismo nombre). El polimorfismo está muy relacionado con la herencia. Ventajas de la programación orientada a objetos Las principales ventajas de la programación orientada a objetos son: Las herramientas POO nos ayudan a mejorar la complejidad. Mejora la productividad debido a la reutilización de código (herencia). Mejora la seguridad y calidad. Permite generar programas modulares mejor estructurados. Etapas para la solución de problemas por computadora de acuerdo con un enfoque orientado a objetos Una vez que se plantea una solución específica, es preciso escribirla en un lenguaje de programación —una notación intermedia entre el lenguaje natural y el de la máquina— para desarrollar un programa que después podrá ejecutarse en la computadora. Aunque el proceso de diseñar programas es esencialmente creativo, se pueden señalar una serie de etapas o pasos comunes que generalmente deben seguir todos los programadores. Las etapas para la solución de un problema por computadora de acuerdo con un enfoque orientado a objetos son: Definición del problema o dominio del problema. Análisis orientado a objetos y diseño orientado a objetos. Programación. Documentación. Definición del problema o dominio del problema Permite describir en forma narrativa o esquemática, de modo claro y concreto, y en un lenguaje corriente el problema que ha de resolverse. Presenta la procedencia y el aspecto de los datos a procesar, y describe los resultados y la manera de presentarlos.

Page 119: Módulo I. Desarrollo de habilidades del pensamiento lógico ...prouniversitarios.org/site/recursos/material-de-apoyo/tecnologias-de... · Módulo I. Desarrollo de habilidades del

Elementos fundamentales de la programación

La programación orientada a objetos permite construir una aplicación utilizando como herramienta a las clases, que, a su vez, permiten generar objetos. El resultado de esto es un programa, una estructura lógica integrada por un conjunto de elementos de construcción (variables, expresiones, instrucciones, etcétera) que permite dar solución a un problema. Al interior de los programas, esos elementos se combinan de acuerdo con ciertas reglas con el fin de que funcionen y puedan ser entendidos por la computadora. En este capítulo se describen los elementos básicos de programación comunes a casi todos los lenguajes: tipos de datos, variables, constantes, expresiones, sentencias de control, además de los elementos característicos de la programación orientada a objetos: clases, métodos, objetos y mensajes. Tipos de datos

En términos generales, un dato es la representación simbólica de un atributo de una entidad; en programación, los datos expresan características de las entidades sobre las que opera un algoritmo. Los datos representan hechos, observaciones, cantidades o sucesos y pueden tomar la forma de números, letras o caracteres especiales. Por ejemplo, la edad y el domicilio (atributos) de una persona (entidad). Los datos pueden ser procesados por la computadora para producir nueva información. Un tipo de dato define el conjunto de valores que es posible crear y manipular, y las operaciones que con ellos pueden llevarse a cabo. Cada variable, constante o expresión tiene asociado un tipo de dato que determina el conjunto de valores que puede tomar. La figura 2.1 muestra claramente los tipos de datos principales clasificados en dos grandes grupos: simples o primitivos y compuestos o estructurados.

1 Entero. Es un valor numérico sin punto decimal. El valor más grande que puede asumir está definido por el espacio que al dato se le haya especificado usar. Puede ir precedido por + o –, lo cual le permite representar tanto valores negativos como positivos. Los siguientes son ejemplos de datos de tipo entero: 2003, –54, +3. 2. Real. Es un valor numérico con punto decimal. El valor más grande que puede asumir está definido por el espacio que al dato se le haya especificado usar. Puede ir precedido por + o –, lo cual le permite representar tanto valores negativos como positivos. Se expresa de dos maneras distintas denominadas: notación de punto fijo y notación exponencial. a) Notación de Punto fijo (flotante): es aquella que sólo maneja números del 0 al 9 y el punto decimal. Maneja un máximo de 10 dígitos. b) Punto Flotante (flotante): un valor en punto flotante tiene la forma “mantisa exponente E”, donde la mantisa es un número real y exponente un número entero el cual representa la cantidad mantisa multiplicada por 10 elevado al exponente. Su representación máxima es de 14 dígitos La diferencia entre punto fijo y punto flotantes es la cantidad de valores que se puede almacenar y que dependerá del microprocesador que se utilice. Ejemplos de datos de tipo carácter son 129.22, 0.005, 3.6 10–4951. 3. Carácter. Este tipo de dato acepta un solo carácter, alfanumérico (un dígito o una letra mayúscula o minúscula), símbolo o carácter especial, que se encuentre en el conjunto ASCII ampliado. El valor debe ir entre apóstrofos. Ejemplos de datos de tipo carácter son: ‘A’, ‘b’, ‘9’ y ‘/’. 4. Cadena. Este tipo de dato aloja un valor formado por una sucesión de caracteres (letras, dígitos y caracteres especiales). El valor debe ir entre comillas dobles. Ejemplos de datos de tipo cadena son: “Universidad Tecnológica”, “$123.67” o “17/03/2003”.

Page 120: Módulo I. Desarrollo de habilidades del pensamiento lógico ...prouniversitarios.org/site/recursos/material-de-apoyo/tecnologias-de... · Módulo I. Desarrollo de habilidades del

5. Booleano o lógico: Este tipo de dato puede alojar uno de dos valores que representan falso o verdadero.

Identificadores Los identificadores son palabras creadas por el programador para denominar los elementos que necesita declarar en un programa, tales como variables, clases, métodos, objetos y estructuras de datos. Los identificadores deben crearse de acuerdo con las siguientes reglas: 1. Deben comenzar con una letra. 2. Pueden combinar letras, números y el carácter de subrayado (_). 3. Los identificadores de clases comienzan con mayúscula; para cualquier otro elemento deben iniciar con minúscula. Algunos ejemplos de identificadores son x1, Estado, edad, nombre, num_seguro, calcular_Suma, Cpersona. Variables y constantes Variables Una variable es un área de almacenamiento temporal a la que se ha asignado un nombre simbólico y cuyo valor puede ser modificado a lo largo de la ejecución de un programa. Por ejemplo:

Constante Una constante es un valor definido que no cambia durante la ejecución de un programa. Por ejemplo: 3.1416, 3, “Universidad”, ‘a’ o –256 2.4 Declaración de variables Todos las variables deben ser declaradas antes de ser utilizadas. Esto significa que el compilador debe conocer, por adelantado, la variable y el tipo de dato que se estará utilizando. En términos generales, la sintaxis que se emplea para declarar una variable es

Page 121: Módulo I. Desarrollo de habilidades del pensamiento lógico ...prouniversitarios.org/site/recursos/material-de-apoyo/tecnologias-de... · Módulo I. Desarrollo de habilidades del

Una variable queda determinada por: Nombre. Permite referirse a la misma; el nombre es su identificador. Tipo de dato. Permite conocer qué valores se pueden almacenar en ella. Rango. Determina el conjunto de valores que puede admitir. En resumen: Existen cinco tipos básicos de datos: entero (para valores numéricos sin punto decimal), real (para valores numéricos con punto decimal), carácter (para un solo símbolo o carácter), cadena (para una sucesión de símbolos o caracteres) y booleano (para uno de dos valores: falso o verdadero). Expresiones y operadores aritméticos Una expresión aritmética es un conjunto de valores, constantes, variables y/o funciones combinadas con operadores aritméticos. Estas expresiones producen resultados de tipo numérico y se construyen mediante operadores aritméticos y funciones matemáticas intrínsecas. Un operador es un símbolo que le indica al compilador desarrollar una operación matemática o lógica específica. La siguiente tabla lista los operadores aritméticos:

Los operadores aritméticos deben aplicarse siguiendo cierta jerarquía: 1) ( ) paréntesis 2) ** exponenciación 3) * / multiplicación, división 4) + – suma, resta Las operaciones con igual jerarquía, se resuelven de izquierda a derecha. Por ejemplo, la expresión matemática

en la computadora se convierte en: a + b / c El orden de evaluación de la siguiente expresión aritmética es:

Problemas de operadores aritméticos Convierta a expresión de computadora y grafique el orden de evaluación: Por ejemplo:

Page 122: Módulo I. Desarrollo de habilidades del pensamiento lógico ...prouniversitarios.org/site/recursos/material-de-apoyo/tecnologias-de... · Módulo I. Desarrollo de habilidades del

se expresa como

Asignación Es la operación de asignar o cambiar un valor a una variable. Se lleva a cabo de acuerdo con la siguiente sintaxis: nombre de variable = expresión La asignación se lleva a cabo evaluando la expresión y asignando el resultado obtenido a la variable, definida a la izquierda del símbolo de asignación. Por ejemplo:

Entrada/salida Para que la computadora pueda realizar cálculos requiere de los datos necesarios para ejecutar las operaciones; es decir, necesita una entrada que posteriormente se convertirá en resultados o salida. En términos muy genéricos, la inserción de datos de entrada a la computadora se conoce como lectura y la transferencia de datos hacia un dispositivo de salida de una computadora se denomina escritura. Entrada Las operaciones de entrada permiten leer valores y asignarlos a determinadas variables. Los datos se introducen a la computadora mediante dispositivos de entrada (teclado, unidades de disco, escáneres, etcétera) y son almacenados en las direcciones de memoria asignadas a las variables. En términos generales, el proceso se lleva a cabo dentro de la siguiente estructura: Leer (Var1, Var2, Var3,...,VarN) donde Var# es el nombre de una variable La figura ilustra la función de un segmento de código de entrada como el siguiente:

Page 123: Módulo I. Desarrollo de habilidades del pensamiento lógico ...prouniversitarios.org/site/recursos/material-de-apoyo/tecnologias-de... · Módulo I. Desarrollo de habilidades del

Salida Las operaciones de salida permiten desplegar o imprimir los resultados o valores guardados en memoria en un dispositivo de salida (pantalla, impresora, trazador, etcétera). Se llevan a cabo bajo el siguiente esquema genérico:

Donde las variables y constantes van separadas por comas. La figura ilustra la función de un segmento de código de salida (impresión) como el siguiente:

El resultado en pantalla sería:

Page 124: Módulo I. Desarrollo de habilidades del pensamiento lógico ...prouniversitarios.org/site/recursos/material-de-apoyo/tecnologias-de... · Módulo I. Desarrollo de habilidades del

4.2. UML Para el análisis y Diseño orientado a objetos

Análisis orientado a objetos y diseño orientado a objetos

El análisis orientado a objetos (AOO) se centra en la investigación del problema, buscando identificar y describir los objetos en el dominio del mismo. A partir de los objetos, que surgen a consecuencia de los requisitos del problema, se definen sus atributos (datos), relaciones y procedimientos (métodos). En el diseño orientado a objetos (DOO) se procura definir los objetos lógicos (clases) que finalmente serán implementados en un lenguaje de programación. Las clases no son consecuencia de los requisitos del problema, sino de la solución propuesta (dominio de la solución). Es difícil determinar dónde acaba el AOO y dónde comienza el DOO; lo que algunos autores incluyen en el AOO, otros lo consideran dentro del DOO. El objetivo del AOO es modelar la semántica del problema en términos de objetos distintos pero relacionados. Por su parte, el DOO implica reexaminar los objetos del dominio del problema para refinarlos, extenderlos y reorganizarlos en clases para mejorar su reutilización y aprovechar la herencia. El AOO se concentra en los objetos del dominio del problema; el DOO, en las clases del dominio de la solución. Para representar las etapas de análisis y diseño orientados a objetos se creó la notación UML (Unified Modeling Language, Lenguaje unificado para la construcción de modelos). El UML se define como un “lenguaje que permite especificar, visualizar y construir los artefactos de los sistemas de Software...” (Largman, 99) y ahora es un estándar emergente en la industria para modelado orientado a objetos. Nació en 1994, gracias al esfuerzo combinado de Grady Booch y James Rumbaugh para combinar sus famosos métodos: el de Booch y el OMT (Object Modeling Technique, Técnica de modelado de objetos), y cuya primera versión se denominó Unified Metod v. 0.9. En 1995, se unió al esfuerzo Ivar Jacobson, creador del método OOSE (Object Oriented Software Engineering, Ingeniería de software orientada a objetos), y en 1997 se presentó una notación unificada llamada UML como estándar de modelado. UML permite presentar los diagramas de clase del dominio del problema; no constituye una guía para efectuar el análisis y diseño orientado a objetos, o una lista de procesos de desarrollo a seguir. Los siguientes son algunos de los elementos más importantes a utilizar en el desarrollo de diagramas de clases con UML. Diagramas de clases Permiten describir la composición de las clases que van a estar definidas por atributos, métodos y una especificación de acceso. Formato

Atributos. Describen las características de los objetos: tipo de acceso (privado, protegido, publico) y tipo de dato (entero, real, booleano, etcétera). Métodos. Describen lo que puede hacer la clase; es decir, el método define las instrucciones necesarias para realizar un proceso o tarea específicos. La definición del método se compone de tipo de acceso, tipo de retorno, nombre del método, parámetros, si los requiere, y el cuerpo del método. Los tipos de acceso se emplean para controlar la visibilidad de los miembros de una clase y pueden ser los siguientes: Públicos. Son accesibles desde cualquier parte del programa. Se representan con el signo más (+). Privados. Son accesibles sólo por los métodos que pertenecen a la clase. Se representan con el signo menos (–). Protegidos. Se utilizan sólo con la herencia; son accesibles por los métodos de la clase base y también por los métodos de las clases derivadas. Se representan por el signo de número (#). Programación Aunque esta etapa consiste en escribir un programa para resolver el problema, hacerlo correctamente no es sólo redactar código en un lenguaje de programación específico. El programa resultante debe ser, además, claro, eficiente y fácil de modificar y usar. Esto implica una disciplina y una metodología de programación mediante las cuales pueda establecerse un estilo de desarrollo que garantice la calidad del producto. La correcta consumación de esta etapa implica seleccionar una técnica que permita tener una visión clara y detallada de los pasos lógicos a seguir: construir algoritmos, elaborar diagramas de flujo y acción, programar con un estilo funcional, etcétera. Posteriormente se realiza una prueba de escritorio, a la que siguen la codificación, compilación, ejecución y prueba del programa.

Page 125: Módulo I. Desarrollo de habilidades del pensamiento lógico ...prouniversitarios.org/site/recursos/material-de-apoyo/tecnologias-de... · Módulo I. Desarrollo de habilidades del

Algoritmo

Desarrollar software sin un buen algoritmo es como construir una casa sin los planos necesarios: los resultados pueden ser catastróficos. Un algoritmo puede definirse como una técnica de solución de problemas que consiste en una serie de instrucciones pasó por paso y que produce resultados específicos para un problema determinado. Como planos previos a la construcción de programas de computación, los algoritmos permiten esquematizar los pasos a seguir usando un lenguaje de especificaciones llamado seudocódigo, que requiere menos precisión que un lenguaje de programación formal. De hecho, la computadora no puede ejecutar el seudocódigo de un algoritmo: sólo ayuda al programador a determinar cómo escribir la solución planteada en un lenguaje de programación. Un buen algoritmo debe ser independiente pero fácilmente traducible a cualquier lenguaje formal de programación. Por tanto, todo algoritmo debe poseer las siguientes características: Debe estar compuesto por acciones bien definidas (especificidad). Debe constar de una secuencia lógica de operaciones. Debe ser finito Los algoritmos son técnicas que empleamos en la vida diaria de forma inconsciente y automática para llevar a cabo acciones tan cotidianas como preparar una gelatina, lavarse el cabello, cambiar una llanta, salir del salón de clase, quitarse las medias, ir al cine. Por ejemplo: Problema: ¿Qué hacer para ver la película Inteligencia Artificial? Algoritmo: 1. Averiguar por medio de una cartelera (en Web o en un periódico) dónde y en qué horario se exhibe esa película concreta. 2. Estar en la taquilla del cine donde se exhibe un poco antes del horario especificado. 3. Comprar una entrada y entrar a la sala correspondiente. 4. Sentarse en la butaca. 5. Ver la película. 6. Salir del cine Este algoritmo consta de 6 pasos genéricos, que pueden ser más detallados y específicos para lograr ir al cine a ver esa película. Un algoritmo orientado a objetos consta de dos partes: La definición de la clase, que está compuesta de sus atributos y sus métodos. El cuerpo principal, en donde se hace la declaración del objeto, la lectura de datos, la llamada a los métodos de la clase y la impresión de salida, entre otros. Prueba de escritorio Consiste en examinar la solución exhaustivamente con el fin de que produzca los resultados deseados; al mismo tiempo, la prueba detecta, localiza y elimina errores. Debe considerar varias posibilidades de valores de entrada para garantizar que éstos produzcan siempre un resultado correcto. Trate de incluir valores no muy comunes, para analizar el comportamiento del algoritmo bajo condiciones extremas. Por ejemplo, suponga que un algoritmo requiere que el usuario ingrese un valor para buscar su raíz cuadrada. El usuario no debería introducir un valor negativo porque la raíz cuadrada de un número negativo es imaginaria. Sin embargo, usted debe probar qué hará el algoritmo si el usuario lo hace. Otra posibilidad de ingreso que siempre debe tomarse en cuenta para una división es un cero como divisor.

Page 126: Módulo I. Desarrollo de habilidades del pensamiento lógico ...prouniversitarios.org/site/recursos/material-de-apoyo/tecnologias-de... · Módulo I. Desarrollo de habilidades del

Codificación

La codificación implica convertir el algoritmo resultante en un código escrito en lenguaje de programación. Al resultado se le denomina programa fuente. EJEMPLO 1.4 Partiendo del ejemplo 1.3, el algoritmo se traduce a dos lenguajes de programación: C++ y Java. Compilación y Ejecución Compilación Una vez que el algoritmo ha sido convertido en un programa fuente, es preciso compilarlo —traducirlo— en un programa objeto. Si tras la compilación se presentan errores (de sintaxis) en el programa fuente, éstos se deben corregir para poder volver a compilarlo. Ejecución La ejecución de un programa consiste en que la computadora procese cada una de las instrucciones que el primero contenga. Debe emplearse una amplia variedad de datos de entrada, conocidos en esta fase como datos de prueba, para determinar si el programa tiene errores. Esta gama de datos de prueba debe incluir: Valores normales de entrada. Valores extremos de entrada que comprueben los límites del programa. Valores que comprueben aspectos especiales del programa. Tipos de errores Durante el desarrollo de un programa es necesario poner especial cuidado en evitar que el producto obtenido presente errores que lo hagan inservible. Los errores se clasifican de la siguiente manera: Errores de compilación. Los errores en tiempo de compilación, o errores sintácticos, se derivan del incumplimiento de las reglas sintácticas del lenguaje como, por ejemplo, una palabra reservada mal escrito o una instrucción incompleta. Si existe un error de sintaxis, la computadora no puede comprender la instrucción y no puede generarse el programa objeto. El compilador despliega una lista de todos los errores encontrados. Errores de ejecución. Estos errores se producen por instrucciones que la computadora puede comprender pero no ejecutar; por ejemplo, la división entre cero o el cálculo de raíces cuadradas de números negativos. En estos casos se detiene la ejecución del programa y se imprime un mensaje de error. Son más difíciles de detectar y corregir que los errores sintácticos, ya que ocurren o no dependiendo de los datos de entrada que se utilicen. Errores de lógica. Consisten en resultados incorrectos obtenidos por el programa. Son los más difíciles de detectar, ya que el programa no puede producir errores de compilación ni de ejecución, y sólo puede advertirse el error comparando los resultados del programa con los obtenidos por un mé- todo distinto que se considere confiable (por ejemplo, operaciones matemá- ticas hechas a mano). En este caso se debe volver a la etapa de diseño, modificar el algoritmo, cambiar el programa fuente y compilar y ejecutar una vez más. Documentación La documentación de un programa consta de las descripciones de los pasos a seguir en el proceso de resolución de un problema. La importancia de la documentación debe ser destacada por su decisiva influencia en el producto final. Los programas deficientemente documentados son difíciles de leer, más difíciles de depurar y casi imposibles de mantener y modificar. La documentación de un programa se hace a través de las líneas de comentarios, y se incluyen tantas como sean necesarias para aclarar o explicar el significado de las líneas de código que no son obvias, especialmente en lo que respecta a: Identificadores y estructuras de datos declaradas. Estructuras de control. Métodos y sus parámetros. En resumen: Una solución orientada a objetos implica los siguientes pasos necesarios: Análisis y diseño orientado a objetos Identificar las abstracciones (clases). Identificar los atributos (datos) de cada abstracción. Identificar las operaciones (métodos) de cada abstracción. Aplicar la herencia donde sea necesario. Construir el diagrama de clases.

Page 127: Módulo I. Desarrollo de habilidades del pensamiento lógico ...prouniversitarios.org/site/recursos/material-de-apoyo/tecnologias-de... · Módulo I. Desarrollo de habilidades del

Programación

Desarrollo del algoritmo. Prueba del algoritmo (prueba de escritorio). Codificación del algoritmo en un lenguaje de programación Estructura fundamental de un programa orientado a objetos Para desarrollar un programa específico de manera lógica y completa es necesario conocer los elementos que lo conforman. Como metodología de programación, la POO establece una manera particular de agrupar los componentes y organizar su estructura para posteriormente desarrollar aplicaciones. La POO opera con base en un conjunto de objetos que interactúan entre sí y que deben estar organizados en clases. La POO emplea un formato que permite definir la solución de un problema: el seudocódigo. Formato de escritura de un algoritmo a través de un seudocódigo El siguiente esquema ilustra el formato general en seudocódigo para plantear la solución de un problema bajo un enfoque orientado a objetos:

Este formato está compuesto por dos partes fundamentales: Área de declaración de clases definidas por el usuario. Se definen las clases creadas por el usuario; debe haber por lo menos una. Área del programa principal o cuerpo del programa. Es el bloque de instrucciones que permitirán la utilización de las clases, además de otras tareas para la solución del problema. Reglas para la escritura del seudocódigo 1. Todas las clases deben ser definidas antes del cuerpo del programa principal. 2. El cuerpo del programa principal debe empezar con la palabra INICIO y finalizar con la palabra FIN. 3. El seudocódigo debe ser escrito en letra de imprenta. 4. Los comentarios se harán en una de dos formas: a) /* ….. comentario ……. */ b) // ……comentario….. 5. Apegarse a los formatos establecidos para cada instrucción. Clase

Todo programa orientado a objetos basa su construcción en un elemento fundamental que es la clase, la cual es manipulada por los objetos a través de los métodos. La clase es un tipo de dato definido por el usuario que especifica las estructura de los datos y los métodos correspondientes a ese tipo de dato particular. Existen un par de definiciones de clases que pueden ilustrar mejor su naturaleza: “Son los moldes con los que se producen los objetos.” (Deitel/Deitel.) “Es un término técnico que se aplica a los lenguajes orientados a objetos para describir grupos de estructuras de datos caracterizados por propiedades comunes.” (Meyer.)

Page 128: Módulo I. Desarrollo de habilidades del pensamiento lógico ...prouniversitarios.org/site/recursos/material-de-apoyo/tecnologias-de... · Módulo I. Desarrollo de habilidades del

Una clase se compone de atributos y métodos, y es posible definir muchos objetos de la misma clase. Todos los miembros de una clase son globales dentro de la clase, independientemente del tipo de acceso que tengan; es decir, todos los métodos pueden utilizar los atributos de la clase.

En seudocódigo, la creación de clases sigue la sintaxis que se ilustra a continuación:

Modos de acceso

Determinar la forma de acceso a los miembros de una clase permite mantener la característica de ocultamiento en POO. Normalmente, es buena práctica restringir el acceso a los datos de una clase y a otra información interna empleada para definir el objeto. Este ocultamiento de información es el proceso mediante el cual se hace disponible para el programa sólo la cantidad de información sobre la clase que éste requiere para usarla. Para usar la clase, los programas deben conocer la información que la compone, es decir, sus datos y los métodos que los manipulan. Los programas no necesitan saber cómo trabajan los métodos sino, más bien, las tareas que cumplen. Miembros públicos, privados y protegidos Los miembros de una clase pueden ser privados, públicos y protegidos, y se pueden aplicar a los atributos (datos) y métodos de una clase. Los miembros públicos, privados o protegidos permiten ocultar la información dentro de los programas. Los programas no pueden acceder, a través de los objetos, a los miembros privados de la clase. Si el objeto intenta acceder a un miembro privado (por ejemplo, obj clase.x = 5, donde x es un dato privado) el compilador generará un mensaje de error. En vez de esto, el programa debe invocar un método de la clase para asignar los valores del miembro dato x. Al evitar que los usuarios tengan acceso directo a los miembros datos, usted puede asegurarse de que el programa siempre valide los valores que intenta asignar a los datos. Los objetos pueden acceder a los miembros públicos desde cualquier parte del programa. Por otra parte, sólo se puede acceder a los miembros privados y protegidos utilizando funciones (métodos) de la clase. A continuación se especifican con más detalle cada uno de los modos de acceso: Miembros privados. Son aquellos a los que puede accederse sólo dentro de la clase en que están definidos. El objeto no puede tocar los miembros de la clase. Miembros públicos. Son aquellos a los que puede accederse desde dentro de la clase y también por parte del objeto. Miembros protegidos. Son aquellos a los que puede accederse sólo dentro de la clase en que están definidos. Es importante aclarar que este tipo de acceso se asocia directamente con la herencia. Dependiendo del lenguaje de programación, al omitir la especificación de modo de acceso a los miembros de la clase, el compilador asumirá privado o publico. Por ejemplo, el lenguaje C++ asume privado, pero JAVA asume público. Los siguientes esquemas ilustran los distintos tipos de acceso:

Page 129: Módulo I. Desarrollo de habilidades del pensamiento lógico ...prouniversitarios.org/site/recursos/material-de-apoyo/tecnologias-de... · Módulo I. Desarrollo de habilidades del

En resumen:

Para controlar la forma en que los programas acceden a los miembros, es necesario definir a éstos como públicos, privados o protegidos. Los miembros privados o protegidos permiten a la clase ocultar información que ésta contiene y que el programa no debe conocer o a la que no necesita acceder directamente. Las clases que usan miembros privados o protegidos proporcionan funciones (métodos) para acceder a ellos. En el siguiente ejemplo se plantea una clase, Suma, que suma dos números enteros declarando miembros privados y públicos:

Métodos Un método (función) es un conjunto de instrucciones o sentencias que realiza una determinada tarea; se identifica con un nombre y puede o no devolver un valor. Cuando se llama a un método, el flujo de control del programa se transfiere al método y se ejecutan una a una las instrucciones que lo integren; cuando se han ejecutado todas, el control regresa al punto desde donde se hizo la llamada y el programa continúa con la siguiente instrucción o sentencia. Todo método tiene que ser invocado (llamado) desde algún punto del programa (programa principal u otro método)

Page 130: Módulo I. Desarrollo de habilidades del pensamiento lógico ...prouniversitarios.org/site/recursos/material-de-apoyo/tecnologias-de... · Módulo I. Desarrollo de habilidades del

En los lenguajes orientados a objetos, los métodos son operaciones o servicios que describen un comportamiento asociado a un objeto. Representan las acciones (tareas concretas) que pueden realizarse por un objeto o sobre un objeto. Cada método tiene un nombre y un cuerpo que realiza la acción. Los métodos tienen las siguientes características: Generan respuesta a un mensaje. Procesan datos. Corresponden a código ejecutable (instrucciones). Si devuelven un valor, deben retornar sólo uno. La siguiente figura puede ayudar a entender los métodos:

Definición de métodos La definición de un método tiene tres componentes principales: El tipo de devolución y el nombre del método La declaración de los parámetros formales El cuerpo del método Para definir un método se utiliza el siguiente formato: La definición del método implica los siguientes elementos fundamentales: Acceso. Es el modificador que autoriza el acceso al método (público, privado o protegido). Tipo de dato. Es el tipo de respuesta que devuelve el método, si tiene algún valor para devolver. Variable_1 .. n. Se consideran variables locales al método donde están definidas. Parámetros formales. Son variables que reciben valores desde el punto de llamada que activa al método. Los parámetros formales son valores que se suministran al método en forma de variables, objetos y/o constantes. Deben ser declarados con su tipo de dato correspondiente y separados con coma, y son locales al método, lo cual significa que serán reconocidos sólo en el método donde estén declarados. El siguiente ejemplo ilustra la función de los parámetros formales. Se declara un método sumar que acepta dos parámetros formales, a y b, de tipo entero y que retorna un valor entero:

Page 131: Módulo I. Desarrollo de habilidades del pensamiento lógico ...prouniversitarios.org/site/recursos/material-de-apoyo/tecnologias-de... · Módulo I. Desarrollo de habilidades del

Cuerpo del método. Lo forman las sentencias que definen lo que hace la función o método. También pueden contener declaraciones de variables locales. El valor devuelto a la sentencia de llamada se hace utilizando la sentencia retornar. Revise el siguiente ejemplo donde la clase Suma suma dos números enteros:

Objetos

Los objetos son sujetos o cosas tangibles de nuestro mundo real que tienen un estado y un comportamiento. En POO, un objeto está compuesto por datos y métodos.

Los objetos son variables declaradas del tipo de una clase e instancias de una clase. Un objeto tiene la estructura y el comportamiento definido por la clase, y muestra el comportamiento reflejado por sus operaciones (métodos), que actúan sobre sus datos. Antes de emplear un objeto, primero es necesario declararlo. Un objeto se identifica por un nombre exclusivo y tiene un conjunto de atributos (datos) y operaciones (métodos). Además, tiene un ciclo de vida; es decir, se crea y se destruye. Los métodos son el único medio de acceder a los datos del objeto; no es posible hacerlo directamente. Los datos están ocultos y eso asegura que no puedan modificarse por accidente por métodos externos al objeto. Declaración y creación de un objeto Una vez definida la clase se pueden crear muchas instancias (objetos). El formato para declarar un objeto es el siguiente:

Page 132: Módulo I. Desarrollo de habilidades del pensamiento lógico ...prouniversitarios.org/site/recursos/material-de-apoyo/tecnologias-de... · Módulo I. Desarrollo de habilidades del

El siguiente esquema ilustra el proceso descrito:

Acceso a los elementos de un objeto Después de que se ha creado un objeto, se puede acceder a sus elementos con el formato siguiente:

El operador punto (.) permite acceder a los miembros de un objeto; el siguiente ejemplo ilustra su empleo

Mensajes

Es una llamada a una función o método, una orden que se envía a un objeto para instruirle que lleve a cabo una acción. Una llamada puede llevar argumentos o parámetros al método invocado y éste puede devolver un valor. Los mensajes o llamadas emplean el siguiente formato:

Donde lista de parámetros actuales puede ser identificadores y/o constantes que se envían al método llamado. Los argumentos deben corresponder en tipo, orden y cantidad con la lista de parámetros del método.

Page 133: Módulo I. Desarrollo de habilidades del pensamiento lógico ...prouniversitarios.org/site/recursos/material-de-apoyo/tecnologias-de... · Módulo I. Desarrollo de habilidades del

El siguiente ejemplo de código ilustra una llamada o mensaje:

Parámetros por valor o paso por valor

El paso por valor copia el valor del parámetro actual al parámetro formal del método. Por este medio es posible modificar el parámetro formal dentro del método, pero el valor del parámetro actual no cambia una vez que se retorna al punto de llamada. Las variables reales no se pasan al método; sólo se hacen copias de su contenido (valor). El siguiente ejemplo ilustra el paso por valor:

Page 134: Módulo I. Desarrollo de habilidades del pensamiento lógico ...prouniversitarios.org/site/recursos/material-de-apoyo/tecnologias-de... · Módulo I. Desarrollo de habilidades del

En el siguiente ejemplo se define un algoritmo para leer tres números y calcular e imprimir la suma de los mismos:

Métodos especiales

Son métodos cuyo objetivo es asignar espacio de memoria a un objeto o liberar espacio de memoria asignado al objeto, los cuales se implementan a través de los métodos llamados Constructores y Destructores. Constructor. Es un método para construir un nuevo objeto y asignar valores iniciales a sus miembros datos. El propósito de un constructor es garantizar que el objeto permanezca en un estado consistente en el momento de su creación. Al no existir un constructor, el compilador genera uno automáticamente. Un constructor emplea el siguiente formato:

Los constructores se caracterizan por tener el mismo nombre de la clase que inicializan; no devuelven valores; admiten parámetros como cualquier método; puede existir más de uno o no existir, y deben aplicarse exclusivamente a la tarea de inicializar un objeto. El siguiente ejemplo ilustra el uso de un constructor: Suponga que se depositó un capital inicial de $5,000.00 en una cuenta de ahorros el primero de enero del año 2000 y que el banco paga anualmente el 7% de interés. Para determinar el capital al término de 5 años.

Page 135: Módulo I. Desarrollo de habilidades del pensamiento lógico ...prouniversitarios.org/site/recursos/material-de-apoyo/tecnologias-de... · Módulo I. Desarrollo de habilidades del

Destructor. Es un método que libera o limpia el almacenamiento asignado a los objetos cuando se crean. Para ello se emplea el siguiente formato:

Los destructores tienen el mismo nombre de la clase pero con una tilde (~) antepuesta; no puede tener argumentos; no pueden devolver valores, y cada clase puede tener sólo un destructor. El siguiente ejemplo ilustra el uso de un destructor:

Sistemas Operativos Protección de los sistemas operativos Definición de Sistema Operativo

Todos sabemos, aunque sea de manera intuitiva, lo que es un sistema operativo. Se podría entender como la capa intermedia que nos permite interactuar con el ordenador y sobre la que se ejecutan las aplicaciones. Funciones Básicas de un Sistema Operativo Podemos englobar las funcionalidades de un Sistema Operativo en los siguientes grupos básicos: Gestión del Procesador y la Memoria: el SO tiene que asegurar que cada proceso obtiene una parte del tiempo del procesador, y que el procesador es usado eficientemente. Además define los métodos por los cuales el operativo asigna la memoria a los procesos. Gestión de los Sistemas de Almacenamiento: el SO define como son almacenados los datos de una manera fiable. Gestión de la Entrada/Salida: el SO debe ser capaz de gestionar como interactúan los componentes hardware, e interactuar con las aplicaciones y el usuario. Gestión de la Red: Aunque puede considerarse parte de la entrada y salida, su importancia le hace tomar entidad propia. El Sistema operativo debe permitir la comunicación en red de las distintas aplicaciones. Principios fundamentales de la seguridad informática La seguridad informática se puede dividir en varios principios a cumplir: Integridad Requiere que no se la información se altere de forma no autorizada. Confidencialidad Requiere que la información sea accesible únicamente por las entidades autorizadas. Control de Acceso Requiere que la información sólo pueda ser accedida por las entidades autorizadas. Autenticidad Capacidad de verificar la autenticidad de quién accede a los recursos y de los recursos en sí mismos. No repudio Capacidad de probar la participación de las partes en el acceso a los recursos. Disponibilidad Requiere que los recursos del sistema están disponibles para las entidades autorizadas cuando los necesiten. Ahora que hemos visto las funcionalidades básicas de los sistemas operativos y los principios de la seguridad, veremos cómo los sistemas operativos cumplen dichos principios en cada una de sus funcionalidades. Gestión del Procesador y la Memoria Protección de Memoria

En un sistema multiproceso podemos distinguir dos tipos de protecciones de memoria: La protección de los procesos o tareas entre ellos. La protección del propio sistema operativo (kernel) de los procesos. Protección entre Procesos Los procesos manejan direcciones virtuales, las cuales son mapeadas mediante una controladora hardware (MMU - memory management unit) a direcciones físicas de la memoria. Cada proceso tiene un espacio de direcciones virtuales diferente, y, cuando se realiza un cambio de contexto, se cambia la tabla de páginas que mapea las direcciones virtuales a direcciones físicas. Esto, a nivel de seguridad, da lugar a que un proceso no pueda acceder a la zona de memoria de otro, ya que cada uno va a tener un espacio de direcciones virtuales diferentes.

Page 136: Módulo I. Desarrollo de habilidades del pensamiento lógico ...prouniversitarios.org/site/recursos/material-de-apoyo/tecnologias-de... · Módulo I. Desarrollo de habilidades del

Protección del kernel

El kernel no se puede considerar un proceso aislado con su propio espacio de memoria, ya que se debe permitir la ejecución de determinadas partes del kernel por parte de cada proceso, manteniendo siempre el espacio de memoria del proceso. Una solución sería que el proceso ejecutara directamente el núcleo, pero dada su naturaleza y que tiene acceso a instrucciones privilegiadas, debe protegerse su espacio de memoria y establecer unos puntos de entrada determinados. Para realizar esta protección se debe recurrir a un servicio hardware, que son los niveles de privilegio de ejecución. Habitualmente existen dos niveles de ejecución: Nivel de kernel y nivel de usuario. El nivel de kernel tiene ciertos privilegios, como la ejecuci´on de instrucciones privilegiadas, acceso a todos los registros, acceso a la tabla de traducciones, etc. Cuando un proceso intenta acceder a una nueva porción de memoria (segmento o página) se comprueba su nivel de privilegio. Si el nivel de esta zona de memoria es suficiente (usuario) se permite la ejecución, en otro caso (es una porción del kernel) se lanza una excepción. Las direcciones donde se encuentra el kernel poseen un nivel de ejecución de kernel, de forma que sólo se podrá ejecutar este código con el nivel de kernel. Sólo el propio kernel puede ejecutar el segmento del kernel. Normalmente parte del kernel se encuentra aislado con la incorporación de una tabla de traducción de direcciones específica para el kernel. Esta tabla no se alterara en los cambios de contexto y es común para todos los procesos, activándose en el momento en que el control del sistema pasa al kernel. Para realizar el cambio al modo kernel, existen unos puntos de entrada definidos, a los que se accede mediante una instrucción de llamada al sistema.

Page 137: Módulo I. Desarrollo de habilidades del pensamiento lógico ...prouniversitarios.org/site/recursos/material-de-apoyo/tecnologias-de... · Módulo I. Desarrollo de habilidades del

Buffer Overflow Estructura de un proceso

Antes de ver Buffer Overflow tenemos que saber que un proceso tiene una estructura formada por cuatro partes diferenciadas: Texto: este segmento contiene principalmente el código de ejecución, es decir, una serie de instrucciones para la ejecución del programa. Datos: zona de memoria que contiene las variables globales. Su tamaño es determinado en tiempo de compilación. Heap: contiene variables dinámicas (tamaño asignado con malloc). Stack: buffer con estructura LIFO. Est´a compuesta por frames, creadas por cada llamada a función dentro del código. Cada frame tiene a su vez estructura, y en ella se guardan las variables locales y argumentos de la función, la dirección de retorno y la referencia al frame anterior. La colocación de todos estos componentes en memoria varía dependiendo del sistema operativo concreto, pero los elementos básicos del proceso y los componentes principales del stack descritos están presentes en todos ellos, independientemente de su organización en la memoria.

Page 138: Módulo I. Desarrollo de habilidades del pensamiento lógico ...prouniversitarios.org/site/recursos/material-de-apoyo/tecnologias-de... · Módulo I. Desarrollo de habilidades del

Definición de Buffer Overflow

Buffer overflow o buffer overrun es probablemente la vulnerabilidad de seguridad software más famosa. Es una condición anómala en la cual un proceso permite asignar datos de un tamaño mayor al reservado. El resultado es que esos datos extra sobreescriben las zonas de memoria contiguas. Pueden consistir en entradas especialmente diseñadas para ejecutar código malicioso. Buffer overflow es la base de muchos exploits. Las partes del proceso en las que se puede salir de los márgenes de las variables son el stack y el heap, por lo que la vulnerabilidad de buffer overflow consiste, básicamente, en que el código reciba los datos de entrada en una variable local. Buffer Overflow sobre el Stack

El buffer overflow sobre el stack de proceso o Stack Overflow consiste en que un exploit machaca el buffer de entrada con un shellcode y modificar la variable de retorno de una función del programa para que apunte a dicho shellcode. Esto se puede hacer debido a que la dirección de retorno de una función es uno de los campos de su frame en el stack, por lo que sólo hay que sobreescribirla para que apunte al propio stack en la zona donde está el shellcode. El exploit está compuesto por una ristra de NOPs, que permiten sólo tener que calcular la dirección donde estará el código del shellcode en la pila de una forma aproximada, proporcionándonos un margen de error, el código del shellcode, y la dirección de retorno calculada a partir de la dirección base del stack también repetida N veces, de nuevo para permitirnos un margen de error. Stack overflow es una técnica de hacking bien conocida y existen muchos métodos para evitarla.

Page 139: Módulo I. Desarrollo de habilidades del pensamiento lógico ...prouniversitarios.org/site/recursos/material-de-apoyo/tecnologias-de... · Módulo I. Desarrollo de habilidades del

Buffer Overflow sobre el Heap

El buffer overflow ocurrido en el heap recibe el nombre de Heap Overflow. La memoria en el heap es asignada dinámicamente por la aplicación en tiempo de ejecución. El objetivo del ataque consiste en sobreescribir alguna variable importante almacenada en el heap. Este tipo de ataque es más complejo que el del stack porque depende de la implementación concreta del sistema de asignación de memoria (malloc). Pero al mismo tiempo es más peligroso, ya que es menos conocido que el ataque sobre el stack y es más difícil de detectar y evitar.

Protección contra Buffer Overflow

Existen una serie de técnicas para evitar este tipo de ataques: Protección Stack-smashing: Básicamente, consiste en modificar la estructura del frame del stack añadiendo una marca (”canario”) que, cuando es modificada, permite saber que se ha producido desbordamiento. Esta técnica no es propia del sistema operativo, sino que es una protección del compilador. Implementaciones: StackGuard: incluido a partir de gcc 4.1 en las distribuciones Linux. Propolice: Parche estándar de gcc 3.x para OpenBSD, Trusted Debian, DragonFly BSD, Hardened Linuxfromscratch e IPCop Linux. Está también disponible en Debian y Gentoo, pero por defecto está desactivado. Protección del espacio ejecutable: consiste en marcar las regiones de memoria donde residen el stack y el heap como no ejecutables. Si se intenta ejecutar código en esas regiones lanzara una excepción. Esta técnica a menudo hace uso del bit hardware NX (”No eXecute”) o XD (”eXecute Disabled”). FreeBSD, Mac OS X, Linux kernel 2.6.8+, Windows XP SP2+, Windows Server SP1+, entre otros, ofrecen soporte para ese bit en Intel. Además, OpenBSD ofrece W^X, que permite esta protección en CPUs sin bit NX. Address space layout randomization (ASLR): consiste en colocar las partes de un proceso de forma aleatoria en el espacio de direcciones. Esto hace que el stack no comienze siempre en la misma dirección ´ de memoria, lo que, como vimos en la definición de buffer overflow, era fundamental para calcular la dirección de retorno del shellcode. Está implementado en Linux kernel 2.6+, Windows Vista y OpenBSD. Deep packet inspection (DPI): puede detectar, en el perímetro de la red, intentos remotos de ataques por buffer overflow usando firmas de ataques y heurísticas. Es capaz de bloquear paquetes que tengan la firma de un ataque conocido o cuando detectan series largas de NOPs. Este método no es muy efectivo ya que sólo previene de ataque conocidos y, además, existen muchas formas de codificar las NOPs. Los hackers han empezado a usar shellcodes alfanuméricos, metamórficos y automodificables para evadir su detección por parte de los sistemas heurísticos. Esta técnica tampoco es implementada por los sistemas operativos, la realizan los sistemas de detección de intrusos.

Page 140: Módulo I. Desarrollo de habilidades del pensamiento lógico ...prouniversitarios.org/site/recursos/material-de-apoyo/tecnologias-de... · Módulo I. Desarrollo de habilidades del

Propiedad Intelectual 4.1.1Legislación Nacional e Internacional y la propiedad intelectual

En México los programas y sistemas de cómputo no son susceptibles de protección mediante el otorgamiento de una patente. La autoría intelectual de dichos productos en México se protege mediante su registro ante el Instituto Nacional del Derecho de Autor

Productos susceptibles de registrar

En países como Estados Unidos el software si es susceptible de protección mediante el otorgamiento de patentes de invención, tal es el caso de la famosa patente de OneClick de la empresa Amazon

DERECHOS DE AUTOR

Formas

Jurídicas de

protección

Registros

Reservas de

derechos

Derechos

Conexos

Programas y Sistemas de cómputo

¿Los programas y sistemas de cómputo se

patentan?

Registros

DERECHOS DE AUTOR

Obras literarias y programas de radio

Obras musicales (con o sin letra)

Obras plásticas (pintura, escultura, etc.)

Obras dramáticas y de danza

Arquitectura

Obras gráficas (Dibujo, caricatura, historieta,

diseño gráfico textil, etc.)

Obras cinematográficas, audiovisuales y de TV

Programas y Sistemas de cómputo

Videogramas, fonogramas y libros

Compilaciones

Page 141: Módulo I. Desarrollo de habilidades del pensamiento lógico ...prouniversitarios.org/site/recursos/material-de-apoyo/tecnologias-de... · Módulo I. Desarrollo de habilidades del

Los derechos patrimoniales estarán vigentes durante la vida del autor y, a partir de su muerte, cien años más. Los derechos morales se consideran unidos al autor y son inalienables, imprescriptibles, irrenunciables e inembargables.

Registro de Obra Programa de Cómputo

Es la expresión original en cualquier forma, lenguaje o código, de un conjunto de instrucciones que, con una secuencia, estructura y organización determinada, tiene como propósito que una computadora o dispositivo realice una tarea o función específica. Para estar en posibilidad de proceder al registro de una obra, se requiere presentar los siguientes requisitos:

DERECHOS DE AUTOR

Derechos

Conexos

Artistas, intérpretes o

ejecutantes

Editores de Libros

Productores de Fonogramas

Productores de Videogramas

Organismos de Radiodifusión

FORMATO: RPDA-01 denominado "Solicitud de Registro de Obra", debiendo requisitar los

siguientes rubros y presentarla por duplicado:

. Datos del autor, coautor, seudónimo y titular (en caso de ser más de un autor y/o titular de la obra,

requisitar el formato RPDA-01-A1 - Hoja Adjunta -).

. Datos del Representante Legal (opcional).

. Datos de la Obra.

. En caso de ser derivada, señalar de qué tipo y los datos de la obra primigenia (en caso de ser una

colección, requisitar el formato RPDA-01-A2 - Hoja Adjunta de Obras -)

. Anexar los siguientes documentos:

Documento que acredite la existencia de la Persona Moral.

Documento que acredite la personalidad del Representante Legal.

Identificación oficial del mandante, mandatario y testigos (sólo en caso de que se presente carta

poder).

Comprobante de pago de derechos.

Traducción al español de los documentos que se acompañan en idioma distinto.

Dos ejemplares de la obra (originales), identificados con el nombre del autor y título.

Documento que acredite la titularidad de los derechos patrimoniales sobre la obra (original).

Sobres cerrados con los datos de identificación del autor (sólo en caso de ser una obra creada bajo

seudónimo).

. Lugar, fecha, nombre y firma del solicitante o representante legal.

Page 142: Módulo I. Desarrollo de habilidades del pensamiento lógico ...prouniversitarios.org/site/recursos/material-de-apoyo/tecnologias-de... · Módulo I. Desarrollo de habilidades del

Costo: el monto se fijará de conformidad con el artículo 184 fracción I de la Ley Federal de Derechos.

Plazo: La resolución del trámite se emite en un término de quince días hábiles. (Artículo 58 del Reglamento de la Ley Federal del Derecho de Autor). 4.5 Introducción a la seguridad informática 4.5.1 Contexto de la seguridad informática

Introducción

El concepto de seguridad de la información no se limita a eliminar virus, evitar que hackers puedan acceder a la red y suprimir el spam en el correo electrónico. La seguridad de la información también abarca los procedimientos que deben seguir los empleados y la dirección de una compañía para garantizar la protección de los datos confidenciales y de los sistemas de información frente a las amenazas actuales. Los términos seguridad de la información, seguridad informática y seguridad en la red a menudo se utilizan indistintamente. Estos conceptos están muy relacionados y comparten los objetivos comunes de la protección de la confidencialidad, integridad y disponibilidad de la información; sin embargo, hay algunas diferencias sutiles entre ellos. El concepto de seguridad de la información significa proteger la información y los sistemas de información de un acceso, uso, divulgación, alteración, modificación, lectura, inspección, registro o destrucción no autorizados. La seguridad informática es el nombre genérico para el conjunto de herramientas diseñadas con el fin de proteger los datos almacenados en un equipo y evitar ataques de piratas informáticos. Seguridad en la red es el nombre genérico para el conjunto de herramientas diseñadas para proteger los datos durante su transmisión a través de una red de telecomunicación. Asimismo, es muy habitual el término de seguridad en Internet. La seguridad en Internet abarca el concepto de seguridad perimetral, nombre genérico para el conjunto de herramientas diseñadas para proteger los recursos de una red privada frente a usuarios de otras redes Las diferencias entre seguridad de la información, seguridad informática y seguridad en la red radican principalmente en la aproximación al tema, metodologías utilizadas y el ámbito en que se centra. La seguridad de la información tiene que ver con la confidencialidad, integridad y disponibilidad de los datos, independientemente de su formato. La seguridad informática se orienta a garantizar la disponibilidad y el correcto funcionamiento de un sistema informático. La seguridad en la red se centra en la protección de los datos durante su transmisión. Causas de la inseguridad La inseguridad de los sistemas informáticos y de las redes va más allá de los virus informáticos conocidos. La introducción de mecanismos de protección es una prioridad para cualquier empresa. Los atacantes a una red de telecomunicación no necesitan estar en contacto físico con la víctima; los datos pueden ser fácilmente copiados, transmitidos, modificados o destruidos cuando son transmitidos por la red. Como resultado, si no se dispone de los mecanismos de protección adecuados resulta difícil identificar al atacante: no hay huellas y el marco legal no está suficientemente actualizado para tratar este tipo de delitos. La naturaleza en tiempo real de Internet añade una nueva dimensión a la delincuencia: es instantáneo. Aunque existen muchas causas para los problemas de seguridad, por lo menos podemos mencionar tres tipos de deficiencias fundamentales que dan lugar a dichos problemas: • Deficiencias tecnológicas • Deficiencias de la política de seguridad •Deficiencias de configuración Obviamente, probablemente podríamos añadir las deficiencias humanas y algunas otras, pero el propósito de este documento es concentrarnos en aquellas cuestiones que, una vez reconocidas, se pueden controlar, vigilar y mejorar dentro de una estrategia de seguridad. Clasificación de los ataques

Los ataques a las redes pueden ser definidos como diferentes tipos de actividades sistemáticas dirigidas a disminuir o corromper su seguridad. Desde este punto de vista, un ataque puede ser definido como una amenaza sistemática generada por una entidad de una manera artificial, deliberada e inteligente. Las redes de ordenadores pueden ser vulnerables a muchas amenazas utilizando distintas formas de ataque, entre ellas: Ingeniería social, alguien trata de acceder usando medios sociales (haciéndose pasar por un usuario legítimo o el administrador del sistema, engañando a la gente para que le revelen secretos o claves, etc.). Esta vía de ataque suele dar muchos resultados a los atacantes. Ataques de denegación de servicio, incluyendo todos los tipos de ataques destinados a saturar a un ordenador o a una red, de tal manera que los usuarios legítimos no puede utilizarla. Ataques a determinados protocolos, aprovechando debilidades conocidas. Ataques a servidores, que aprovechan las vulnerabilidades de ciertos sistemas operativos de los ordenadores o vulnerabilidades en la configuración y administración del sistema.

Page 143: Módulo I. Desarrollo de habilidades del pensamiento lógico ...prouniversitarios.org/site/recursos/material-de-apoyo/tecnologias-de... · Módulo I. Desarrollo de habilidades del

Adivinar contraseñas; las contraseñas son secuencias de símbolos, generalmente asociadas a un nombre de usuario, que proporcionan un mecanismo para la identificación y la autenticación de un usuario en particular. En casi todos los servicios son los propios usuarios quienes eligen sus contraseñas, y con frecuencia eligen secuencias que no pueden ser consideradas seguras (por ejemplo, nombre de la pareja, nombre de hijo/hija, fechas de nacimiento,…) Como regla general, las contraseñas que son fáciles de recordar son también fáciles de adivinar. Espionaje de todo tipo, incluyendo la captura de mensajes de correo electrónico, archivos, contraseñas y otra información a través de una conexión de red que permite capturar todos los mensajes de un usuario. Los ataques de seguridad pueden clasificarse en: Ataques pasivos. Ataques activos. Ataques pasivos Un ataque pasivo es aquél en que el atacante monitoriza el canal de comunicación sin modificar ni añadir datos. Un atacante pasivo sólo pone en peligro la confidencialidad de los datos. El objetivo del atacante es obtener la información que se está transmitiendo. Los ataques pasivos están relacionados con el contenido del mensaje y con el análisis de tráfico: Espionaje. En general, la mayoría de la información que se transmite utilizando una red de comunicaciones se envía de forma no segura (sin cifrar) permitiendo a un atacante "escuchar" o interpretar (leer) los datos intercambiados. Uno de los mayores problemas a los que se enfrenta un administrador de una red deriva de la capacidad de un atacante para monitorizarla. Sin servicios de cifrado (basados en el uso de técnicas criptográficas), los datos pueden ser leídos por otras personas a medida que circulan por la red. Análisis de tráfico. Se refiere al proceso de interceptar y examinar los mensajes con el fin de deducir información de patrones en la comunicación. Se puede realizar incluso cuando los mensajes están cifrados. En general, cuanto mayor es el número de mensajes observados, interceptados y almacenados, más se puede inferir del tráfico. El análisis de tráfico, entre otras cosas, permite a un atacante verificar que dos entidades están manteniendo una comunicación en un determinado momento. La figura 1 muestra un modelo de ataque pasivo.

Ataques activos

Un ataque activo intenta alterar los recursos del sistema o afectar a su funcionamiento. En este tipo de ataque el adversario intenta borrar, añadir, o modificar los datos transmitidos. Un atacante activo amenaza la integridad de datos y autenticación, así como la confidencialidad. Los ataques activos engloban alguna modificación del flujo de datos o la creación de datos falsos. Puede dividirse en seis categorías: Suplantación de identidad. Es un tipo de ataque en el que el atacante suplanta la identidad de otro usuario. Repetición. En este tipo de ataque, una transmisión de datos válida es repetida o retardada de forma maliciosa. Este ataque lo puede provocar el mismo emisor de datos originales o bien un atacante que los intercepta y posteriormente los retransmite, posiblemente como parte de un ataque de suplantación de identidad. Modificación de mensajes. El atacante elimina un mensaje que atraviesa la red, lo altera, y lo reinserta. • Hombre en el medio (Man in the Middle, MitM). En este tipo de ataques, un atacante intercepta las comunicaciones entre

Page 144: Módulo I. Desarrollo de habilidades del pensamiento lógico ...prouniversitarios.org/site/recursos/material-de-apoyo/tecnologias-de... · Módulo I. Desarrollo de habilidades del

dos entidades, por ejemplo entre un usuario y un sitio web. El atacante puede utilizar la información que consigue para luego suplantar la identidad del usuario o realizar cualquier otro tipo de fraude. Denegación de Servicio (Denial of Service DoS) y Denegación de Servicio Distribuida (Distributed Denial of Service, DDoS). Una denegación de servicio (DoS) es una situación en la que un usuario u organización se ve privado de los servicios o recursos que normalmente debería tener. En denegación de servicio distribuida, un gran número de sistemas comprometidos (a veces llamado botnet) atacan a un solo objetivo. Amenazas Avanzadas Persistentes (Advanced Persistent Threat, APT). Es un ataque a la red en el que un atacante consigue un acceso no autorizado a la red y permanece allí sin ser detectado durante un largo período de tiempo. La principal intención de un ataque APT es robar datos más que causar daños a la red u organización. Algunas organizaciones que pueden ser objetivo de ataques APT son sectores con alto valor informativo, como la defensa nacional, la industria financiera. La figura 2 muestra un ejemplo de un ataque activo (en concreto, de un ataque de modificación)

Atacantes: objetivos y comportamiento

Un atacante o intruso es un individuo que obtiene, o trata de obtener, permisos o acceso no autorizado al sistema de información. Existen muchos enfoques sobre la forma de clasificar a los atacantes. Los criterios utilizados habitualmente se pueden dividir en los siguientes tres grupos: La ubicación del atacante respecto al sistema atacado. Nivel de conocimiento del atacante Objetivo – por qué se ha realizado el ataque Desde el punto de vista de la ubicación del atacante, existen dos tipos diferentes de atacantes: Atacante interno Atacante externo o intruso Un atacante interno es, en general, una persona que tiene acceso a la red informática interna, y por lo tanto es un usuario legítimo, pero intenta obtener acceso a datos, recursos y servicios del sistema a los que él no debería acceder o bien hacer mal uso de cualquier dato al que esté autorizado. Un intruso o atacante externo es generalmente una persona que no está autorizada a acceder a la red informática interna y desea entrar aprovechando vulnerabilidades del sistema. Dependiendo del nivel de conocimiento del atacante, la clasificación es: Aficionados. Profesionales. Los aficionados llevan a cabo ataques menos peligrosos que los profesionales. Esos ataques están en consonancia con el nivel de formación e instrumentación de los atacantes. El grupo de profesionales por lo general está constituido por excelentes especialistas en informática o telecomunicaciones, altamente capacitados y cualificados y con acceso a recursos especializados. En la práctica, esto significa que son capaces de generar ataques muy peligrosos con graves consecuencias para los sistemas informáticos y redes. Un tema muy discutido cuando se trata de la clasificación de atacantes es la división en las dos categorías siguientes Hackers, Crackers.

Page 145: Módulo I. Desarrollo de habilidades del pensamiento lógico ...prouniversitarios.org/site/recursos/material-de-apoyo/tecnologias-de... · Módulo I. Desarrollo de habilidades del

¿Cómo podemos protegernos?

Se recomiendan las siguientes prácticas para usuarios domésticos Use contraseñas robustas A menudo, la única protección utilizada son las contraseñas. Un identificador de usuario (User ID) es sólo un nombre y requiere una contraseña asociada para poder tener la certeza que se trata de dicho usuario. Por lo tanto, las contraseñas son nuestras claves y debemos protegerlas. Los cortafuegos y sistemas de detección de intrusos no sirven para nada si nuestras contraseñas están comprometidas. Una contraseña segura es la que no se puede encontrar en cualquier diccionario – castellano, catalán, inglés, alemán,… Eso significa que una contraseña que no debe ser fácil de adivinar. En general, las contraseñas más largas son más difíciles de adivinar o descifrar que las contraseñas cortas son. A continuación se presenta una lista que se puede utilizar para establecer contraseñas seguras: Usar una combinación de letras sin sentido: Las mejores contraseñas aparentan ser un puro disparate bajo el punto de vista sintáctico. Por ejemplo, si tomamos la frase: "No esperes que me comporte perfectamente y dibuje esa sonrisa radiante" y utilizamos sólo la primera letra de cada palabra, nuestra contraseña sería neqmcpydesr. Incluir una mezcla de caracteres mayúscula, minúscula y numérica: La contraseña debería incluir alguna letra mayúscula en algún lugar que no fuese el inicio y también algún número. Las contraseñas largas son mejores: La contraseña debería tener al menos 8 caracteres de longitud. Las contraseñas deben cambiarse periódicamente: Incluso las mejores contraseñas deben cambiarse periódicamente (cada 60 días aproximadamente) para evitar que sean utilizadas mucho tiempo si alguien las descubre. Muchos sistemas operativos permiten configurar esta regla para cada usuario. Aunque bajo el punto de vista de usuario esta regla no es práctica, bajo un punto de vista de seguridad resulta muy conveniente. Generar nuevas contraseñas en lugar de reutilizar los mismos una y otra vez: Una contraseña no debería ser utilizada de nuevo por un usuario en un periodo de tiempo inferior a un año. No utilizar un conjunto de caracteres consecutivos en el teclado: Debe evitarse el uso de contraseñas como qwerty, 12345678, o asdfghj. Aunque aparentemente son texto sin sentido, estas secuencias siguen patrones vinculados a la posición de las teclas en el teclado y se pueden romper fácilmente. Tratar las contraseñas de forma totalmente secreta Las contraseñas no se comparten y tienen que estar protegidas. Muchos usuarios escriben sus contraseñas en notas adhesivas pegadas a sus ordenadores o las ponen debajo de sus teclados. ¡Eso no sirve para nada! Para un atacante las contraseñas de administrador son las llaves del reino. Los administradores del sistema con privilegios de root - es decir, sin restricciones de acceso y la capacidad de hacer cualquier tipo de cambios - deben tener contraseñas muy difíciles de adivinar y deben seguir las normas más estrictas respecto al cambio y reutilización. Se recomienda que un administrador cambie TODAS las contraseñas de usuario si sospecha que se ha comprometido su clave. Del mismo modo, si un usuario general sospecha que la contraseña ha sido robada o comprometida, debe cambiarla inmediatamente. Usar siempre protección antivirus El software antivirus no es siempre efectivo 100%, pero es mejor que no tener ninguna protección en absoluto. Es muy posible que un usuario que no haya instalado un antivirus en su ordenador piense que no tiene ningún virus aunque probablemente su equipo esté infectado. El software antivirus consta de dos partes: el motor de análisis y los archivos de firma. Es necesario actualizar periódicamente tanto el motor de análisis como los archivos de firmas, sino el software antivirus pierde su capacidad. El software antivirus generalmente contiene un comando de actualización, o bien se puede consultar si hay actualizaciones pendientes en el sitio Web del fabricante. El motor de análisis le indica al software cómo y dónde realizar la búsqueda, y los archivos de firma son esencialmente una base de datos de virus conocidos y sus acciones. El motor de análisis compara los archivos que contiene el ordenador con los virus conocidos que hay en los archivos de firma. El archivo de firma contiene los patrones de virus conocidos. El software antivirus puede equivocarse indicando falsos positivos (ficheros correctos que son considerados como virus). Cuando se encuentran nuevos virus, los vendedores de software antivirus actualizan sus archivos de firmas para incluir estos nuevos virus. En ocasiones, también el motor de análisis requiere una actualización. Si se actualiza una parte del programa y la otra queda obsoleta, el software no funcionará correctamente. Con el fin de lograr la máxima protección, es necesario instalar el software antivirus tanto en equipos individuales, como en todos los servidores de la red. Esa es la única manera de detectar virus en todos los puntos de entrada. Todos los medios extraíbles, como unidades de memoria USB, CD,... deben ser analizados antes de utilizarse en un sistema. Si el software antivirus está instalado en los cortafuegos se podrán detectar los virus que vienen de las conexiones externas, en particular de Internet. Cambiar las configuraciones predeterminadas

Uno de los errores más habituales es instalar un sistema dejando la configuración por defecto. Las configuraciones predeterminadas a menudo tienen cuentas de administrador predeterminadas y contraseñas que conocen todos los piratas informáticos. Esto es aplicable a routers, hubs, switches, sistemas operativos, sistemas de correo electrónico, bases de datos, servidores web… Además de tener contraseñas conocidas en los equipos, las configuraciones predeterminadas pueden contener múltiples vulnerabilidades de seguridad y deben ser parcheadas. Antes de poner cualquier ordenador en la red, se deberían cambiar los nombres de cuenta y contraseñas por defecto y aplicar todos los parches de seguridad. Aunque esas tareas impliquen consumir más tiempo en la instalación, ahorrará muchos dolores de cabeza posteriores.

Page 146: Módulo I. Desarrollo de habilidades del pensamiento lógico ...prouniversitarios.org/site/recursos/material-de-apoyo/tecnologias-de... · Módulo I. Desarrollo de habilidades del

Usar un cortafuego (firewall)

Es muy recomendable usar algún tipo de producto de firewall. Los posibles atacantes exploran constantemente los sistemas que utilizan la mayoría de usuarios en busca de vulnerabilidades conocidas. Los firewalls de red (ya sean basados en software o hardware) pueden proporcionar cierto grado de protección contra estos ataques. Sin embargo, ningún firewall puede detectar o detener todos los ataques, por lo que no es de gran ayuda instalar un firewall si luego ignoramos todas las medidas de seguridad. No abrir ficheros adjuntos desconocidos en correos electrónicos Antes de abrir los archivos adjuntos de correo electrónico, debemos estar seguros de conocer el origen de los datos. No es suficiente que el correo haya sido enviado desde una dirección reconocida. El virus Melissa se extendió precisamente porque se originó a partir de una dirección familiar. El código malicioso puede ser distribuido en programas divertidos o tentadores. Al abrir un archivo adjunto, es importante tener en cuenta el siguiente procedimiento: Tener el antivirus esté actualizado Guardar el archivo en el disco duro Escanear el archivo con un software antivirus Abrir el archivo Para una protección adicional, se puede desconectar el ordenador de la red antes de abrir el archivo. Debemos tener en cuenta que seguir estos pasos reduce, pero no elimina totalmente la posibilidad de que cualquier código malicioso que haya en el fichero adjunto se extienda desde un ordenador a otros. No ejecutar programas de origen desconocido Nunca se debe ejecutar un programa a menos que sepa lo ha desarrollado una persona o empresa de confianza. Además, no se deben enviar programas de origen desconocido a amigos o compañeros de trabajo simplemente porque son divertidos - pueden contener lo que se denomina un caballo de Troya. Mantener actualizadas todas las aplicaciones, incluyendo el sistema operativo Los vendedores de software suelen entregar parches cuando se descubre que un programa tiene una vulnerabilidad. La mayoría de los productos disponen de un método para obtener actualizaciones y parches. Algunas aplicaciones comprueban automáticamente si hay actualizaciones disponibles. Si no es así, es necesario comprobar periódicamente si hay actualizaciones pendientes de instalar. Apagar el ordenador o desconéctelo de la red cuando no lo use Es recomendable tener el ordenador apagado o desconectado de la red cuando no está siendo utilizado. En esas condiciones, un atacante no puede atacar a un equipo. Hacer copias de seguridad de los datos críticos y crear un disco de arranque Es conveniente guardar una copia de los archivos críticos en un medio extraíble, y almacenar los discos de copia de seguridad en algún lugar lejos del ordenador. Además, es muy útil crear un disco de arranque para permitir la recuperación de un equipo si hubiese problemas. Bibliografía

Rumbaugh James, Blaha Michael, Premerlani, William, Hedí Frederick y Lorensen William, “Modelado y Diseño Orientado a Objetos”, Ed. Prentice Hall,España, 1.985, ISBN 013 – 24000698-5. Rios Patiño, Jorge Ivan, “Administración e inferencia de Bases de Conocimientos usando Bases de Datos relacionales y SQL”, Tesis de la Maestría de Ingeniería del Conocimiento, Facultad de Informática, Universidad Politécnica de Madrid, Madrid, España, Abril, 2002. Brian W Hernigham y Ritchie M. Dennis, “El Lenguaje de Programación en C”, Ed. Prentice may Hispanoamericana S.A, México, 1985, ISBN 968-880- 024-4. Booch, Grady, Rambaugh, James y Jacobson, Ivar, , “El Lenguaje Unificado de Modelado: UML, ”Editorial Addison Wesley:, Madrid , España, 2000. Booch, Grady, “Software Design with ADA ”Editorial Addison Wesley:, U.S.A , 1998.

Page 147: Módulo I. Desarrollo de habilidades del pensamiento lógico ...prouniversitarios.org/site/recursos/material-de-apoyo/tecnologias-de... · Módulo I. Desarrollo de habilidades del

Módulo V. Taller desarrollo e implementación de aplicaciones orientadas a objetos y seguridad informática. Programación Orientada a objetos en C++

El lenguaje C++ fue creado por Bjarne Stroustrup, en el año 1979. Este programador danés empezó a trabajar en el lenguaje, que lo llamaba C con clases. Stroustrup comparó varios lenguajes para la creación del predecesor de C++. Por ejemplo, vio que Simula (un lenguaje POO del 1962), tenía buenas características para programar, pero era muy lento, y el lenguaje BCPL era rápido, pero de bajo nivel. Así que mejoró el lenguaje C con características de Simula. Se decidió por el lenguaje C porque: es de uso general. es rápido. es portable. es muy utilizado. Aunque el lenguaje C++ se creó en 1979, tal y como hemos dicho, no es hasta 1983 que tiene su nombre definitivo, pasando de C con clases a C++. En ese tiempo también se añadieron nuevas características, como la herencia, la sobrecarga de funciones, y las funciones virtuales. C++ 2.0 se lanzó en 1989, con nuevas opciones como herencia múltiple (los lenguajes actuales de programación orientada a objetos solo permite una única herencia), clases abstractas, funciones estáticas y muchas más. ¿Porqué se llama C++?

En programación, muchas lenguajes utilizan el operador ++ para incrementar (aumentar en 1) el valor de una variable. De esta manera, se puede decir que C++ es la continuación (como una versión más), del lenguaje C. Características del lenguaje C++

Las características principales del lenguaje de programación c++ son las siguientes. Sintaxis heredada del lenguaje C.

Tiene un estandard ISO, conocido como ANSI-C++. La última revisión fue en el 2011. Lenguaje fuertemente tipado. El programador debe saber como hacer y declarar el código para que funcione. Programación orientada a objetos, lo que comunmente se puede encontrar por POO. Abstracción. Encapsulado. Herencia. Polimorfismo. •Sobrecarga de operadores. •Soporta expresiones Lambda, también llamadas funciones anónimas. •Control de excepciones. •Biblioteca estándar, que suele venir con el compilador. No solo estamos hablando de las funciones de sistema, como puede ser cout, sino de: Plantillas de clases (o colecciones de objetos) para vectores, listas, mapas, colas, pilas, etc. Soporte multihilo. •Compatibilidad de C con C++. Un compilador de c++ puede compilar código escrito en C, o usar librerías de c con poca modificación de código.. •Uso de punteros. •Es portátil, tiene un gran número de compiladores en diferentes plataformas y sistemas operativos. •Eficiencia con el hardware, al ser un lenguaje compilado. Además, se acerca bastante a un lenguaje de bajo nivel. Una de las pricipales desventajas (o crítica) de C++, es su complejidad. Es un lenguaje pensado para programadores con experiencia programando.

Page 148: Módulo I. Desarrollo de habilidades del pensamiento lógico ...prouniversitarios.org/site/recursos/material-de-apoyo/tecnologias-de... · Módulo I. Desarrollo de habilidades del

Compiladores de C++

IDE (Entorno de Desarrollo Integrado). Proporciona todas las herramientas necesarias para escribir y compilar tu código. Las dos alternativas más populares son:

Visual Studio. Microsoft tiene una versión gratuita llamada Community, con la que podrás crear programas en varios lenguajes de programación, entre ellos C++. •Code:: Blocks. Compilador que necesita menos recursos que Visual Studio. Puedes encontrar otros compiladores, como C++ Builder (de pago) o Dev C++, que se encuentra obsoleto, a igual que Turbo C++ o Borland C++.

Page 149: Módulo I. Desarrollo de habilidades del pensamiento lógico ...prouniversitarios.org/site/recursos/material-de-apoyo/tecnologias-de... · Módulo I. Desarrollo de habilidades del

Programación Orientada a objetos en Java

Java es un lenguaje de programación de alto nivel de propósito general, concurrente, basado en clases, y orientado a objetos. Las aplicaciones de Java son compiladas a bytecode (lenguaje intermedio interpretado) y pueden correr en cualquier máquina virtual Java (JVM) sin importar la arquitectura de la computadora. • El lenguaje Java tiene por nombre Java más la versión. • La plataforma Java es el nombre de un entorno o plataforma de computación originaria de Sun Microsystems, capaz de ejecutar aplicaciones desarrolladas usando el lenguaje de programación Java u otros lenguajes que compilen a bytecode y un conjunto de herramientas de desarrollo. En este caso, la plataforma no es un hardware específico o un sistema operativo, sino más bien una máquina virtual encargada de la ejecución de las aplicaciones, y un conjunto de bibliotecas estándar que ofrecen una funcionalidad común. • Concurrencia: Varios tareas ejecutandose a la vez. • Orientación a Objetos POO (OOP en inglés): Paradigma de programación que se basa en modelar OBJETOS del mundo real y la interacción entre ellos para facilitar el diseño de los programas. Está basado en varias técnicas, incluyendo herencia, cohesión, abstracción, polimorfismo, acoplamiento y encapsulamiento. • Ficheros en Java: Los archivos .java contienen el código fuente y al compilarlos a bytecode se crean los archivos .class. • Los 2 productos principales de la plataforma Java SE son: 1- JRE es el entorno de ejecución de Java. Provee de la JVM, un conjunto de bibliotecas Java y otros componentes necesarios para que una aplicación escrita en lenguaje Java pueda ser ejecutada. 2- Y el kit de desarrollo JDK que es un conjunto más completo que el JRE. Contiene todo lo que está en el JRE más herramientas para compilar y debuggear, necesarias para desarrollar Applets y aplicaciones.

Page 150: Módulo I. Desarrollo de habilidades del pensamiento lógico ...prouniversitarios.org/site/recursos/material-de-apoyo/tecnologias-de... · Módulo I. Desarrollo de habilidades del

• Java SE (Standard Edition) son las librerias estandar para desarrollar aplicaciones.

Java EE (Enterprise Edition) son librerias para aplicaciones web distribuidas (aplicaciones más grandes) y requiere tener Java SE instalado.

Page 151: Módulo I. Desarrollo de habilidades del pensamiento lógico ...prouniversitarios.org/site/recursos/material-de-apoyo/tecnologias-de... · Módulo I. Desarrollo de habilidades del

Fundamentos de la seguridad informática 5.3.1 Operación de la seguridad

La operación de la seguridad, garantiza que los sistemas de información o las transferencias de datos puedan tener la seguridad adecuada. Los servicios de seguridad se implementan mediante mecanismos de seguridad y de acuerdo a las políticas de seguridad. Durante más de veinte años, los pilares básicos de la seguridad de la información han sido la confidencialidad, integridad y disponibilidad (conocida como la tríada CIA, del inglés confidentiality, integrity and availability). Posteriormente se fueron añadiendo otros servicios nuevos; la autenticación, control acceso, no repudio y privacidad. Sin embargo, no existe todavía una clasificación de los servicios de seguridad totalmente aceptada entre los profesionales de esta materia. Confidencialidad

La confidencialidad hace referencia a la protección de la información frente a su divulgación a entidades o individuos no autorizados (organizaciones, personas, máquinas, procesos). Nadie debe poder leer los datos a excepción de las entidades específicas previstas. La confidencialidad es un requisito: Cuando se almacenan los datos en un medio (tal como un disco duro de ordenador) al que puede acceder una persona no autorizada. Cuando los datos se copian en un dispositivo que puede acabar en manos de una persona no autorizada. Cuando los datos se transmiten a través de redes desprotegidas. Dada la sofisticación y la capacidad actual de los posibles atacantes, se deben emplear técnicas criptográficas para cifrar cualquier dato que se considere crítico, garantizando así su confidencialidad. Al igual que ocurre con la integridad de datos, si hay un intercambio de información crítica entre diversas entidades es necesario que haya un acuerdo previo de los algoritmos y claves a utilizar. Integridad de datos

La integridad de datos es la protección de los datos frente a la modificación, supresión, duplicación o reordenación realizada por entidades no autorizadas (organizaciones, personas, máquinas, procesos). Más concretamente, la integridad se refiere a la fiabilidad de los recursos de información. Una violación de la integridad se debe siempre a un ataque activo. La integridad de datos es la garantía de la no alteración: se garantiza la detección de cualquier alteración de los datos (ya sea en tránsito por la red o en almacenamiento en un disco duro, por accidente o deliberadamente). Es evidente que esta garantía es esencial en cualquier tipo de entorno empresarial o comercio electrónico, y es más que deseable en muchos otros entornos. La integridad de un sistema de información implica garantizar que no ha habido ninguna corrupción en los datos que han sido transmitidos o almacenados en el sistema, detectando cualquier posible manipulación. Para ello, es necesario el uso de técnicas criptográficas. Disponibilidad

Significa tener acceso a la información cuando se requiere. Por ejemplo, un fallo de un disco o un ataque de denegación de servicio pueden causar una violación de la disponibilidad. Cualquier retardo superior al establecido según los niveles de servicio puede ser descrito como una violación de la disponibilidad. Si un sistema de información no está disponible cuando se necesita es, como mínimo, tan malo como no disponer de dicho sistema. La disponibilidad, de la misma forma que otros aspectos de seguridad, puede verse afectada por cuestiones puramente técnicas (por ejemplo, una parte mal funcionamiento de una computadora o dispositivo de comunicaciones), fenómenos naturales (por ejemplo, el viento o el agua), o causas humanas (accidental o deliberada). Si bien el riesgo relativo asociado con cada una de estas categorías depende del contexto particular, la regla general es que los seres humanos constituyen el eslabón más débil. Esa es la razón por la que resulta fundamental la capacidad de cada usuario y su voluntad de utilizar un sistema de datos de forma segura. Autenticación

El servicio de autenticación se encarga de asegurar la identidad de las entidades que participan en la comunicación. Es decir, el servicio de autenticación evita que un usuario o entidad pueda suplantar la identidad de otro. En el caso de un único mensaje, por ejemplo una señal de alarma, la función del servicio de autenticación es garantizar al receptor la identidad del mensaje del remitente. En el caso de una interacción, tal como la conexión de un terminal a un servidor, hay dos aspectos involucrados. En primer lugar, en el momento de inicio de conexión, el servicio de autenticación permite asegurar que las dos entidades son auténticas, es decir, que cada uno es la entidad que dice ser. En segundo lugar, el servicio debe garantizar que no hay interferencias en la conexión de tal manera que no sea posible que un tercero pueda suplantar la identidad de alguna de las dos partes legítimas durante la comunicación.

Page 152: Módulo I. Desarrollo de habilidades del pensamiento lógico ...prouniversitarios.org/site/recursos/material-de-apoyo/tecnologias-de... · Módulo I. Desarrollo de habilidades del

Control de acceso

El control de acceso es la protección de los servicios o recursos de información para evitar puedan ser accesibles por parte de entidades no autorizadas (organizaciones, personas, máquinas, procesos). Es decir, el control de acceso se refiere a la prevención del uso no autorizado de un recurso. Por lo tanto, este servicio controla quien y en qué condiciones puede acceder a ciertos recursos, y en caso que accedan qué permisos (lectura, modificación, ejecución,…) tienen sobre dichos recursos. El cumplimiento de este servicio exige que cuando una entidad quiere conseguir acceso a un recurso, en primer lugar se deberá identificar. Con el fin de entender mejor este servicio es importante definir los conceptos siguientes: Privilegios – derechos de acceso o uso de los recursos o servicios Sujetos – entidades sobre las que se ejecutan los derechos de acceso Principal – entidades que gestiona los derechos del control de acceso Objeto / Objetivo – recursos y servicios a los que accede un sujeto. Delegación – transferencia de los privilegios de control de acceso entre principales Autorización – transferencia de los privilegios de control de acceso de un principal a un sujeto Las Listas de control de acceso (ACLs Access control lists) son el mecanismo de protección más comúnmente utilizado para ofrecer este servicio. No-repudio (irrenunciabilidad)

Para tener comunicaciones seguras se requiere integrar un servicio encargado de generar evidencias digitales que permitan resolver posibles controversias surgidas en caso de errores de red o de mal comportamiento de alguna de las entidades que participan en el intercambio de información. No repudio es el servicio de seguridad que utiliza estas evidencias para proporcionar protección contra la negación de una de las entidades de haber participado en la totalidad o parte de una comunicación. No repudio es el servicio de seguridad que garantiza que el remitente de un mensaje no puede negar posteriormente haber enviado el mensaje y que el receptor no pueda negar haberlo recibido. Esto incluye el no repudio de origen (es decir, la prueba de que el mensaje fue enviado por el emisor correspondiente) y no repudio de recepción (es decir, la prueba de que el mensaje ha sido recibido por el destinatario). NRO (No repudio de origen) proporciona evidencias a los receptores de que el mensaje fue enviado por el remitente NRR (No repudio de recepción) proporciona evidencias a los remitentes que el destinatario recibió el mensaje. Los mecanismos de protección típicos son: notarización, registros temporales (time stamping), firmas digitales y servicios de confirmación. Privacidad de datos

Privacidad de datos es el servicio de seguridad que permite a un individuo tener el derecho de controlar la información que se recopila sobre él, quien la utiliza, cómo y para qué la utiliza. En una red abierta como Internet, cada vez resulta más fácil recopilar información sobre una persona, pudiendo comprometer su privacidad. Las nuevas tecnologías pueden desarrollar nuevas formas de captura de información con implicaciones negativas para la privacidad. El uso de la minería de datos y las prestaciones cada vez mejores de los motores de búsqueda permiten capturar y combinar información a partir de una amplia variedad de bases de datos. Hay muchísima información almacenada en bases de datos en todo el mundo, de forma que una persona no tiene posibilidades o conocimientos para controlar la información que hay sobre sí misma. Dicha información puede ser vendida y/o utilizarse para fines desconocidos. El concepto de privacidad de la información es cada vez más importante. La privacidad en Internet es un tema candente. Las problemáticas que abarca pueden clasificarse en: Qué información personal se puede compartir.

Cómo se pueden intercambiar mensajes sin que nadie no autorizado los vea. Cómo se pueden realizar transacciones de forma totalmente anónima. Por otra parte, la capacidad de rastrear la ubicación de dispositivos móviles da lugar a nuevos problemas como la localización de un usuario y sus preferencias. Hay muchas formas de proteger la privacidad del usuario en Internet. Por ejemplo, tanto los e-mails como el contenido de páginas web se puede cifrar. La navegación por páginas web y otras actividades en la red pueden ser desarrolladas sin dejar huellas a través de anonimizadores llamados mix nets. Estas mix nets se pueden utilizar para impedir que los proveedores de servicios a Internet sepan qué sitios visitamos y con quién nos comunicamos. Mecanismos de seguridad

Un mecanismo de seguridad es un proceso que implementa uno o más servicios de seguridad. Los mecanismos de seguridad dan soporte a los servicios de seguridad y ejecutan actividades específicas para la protección frente a ataques o resultados del ataque. Los mecanismos de seguridad fundamentales son:

Page 153: Módulo I. Desarrollo de habilidades del pensamiento lógico ...prouniversitarios.org/site/recursos/material-de-apoyo/tecnologias-de... · Módulo I. Desarrollo de habilidades del

Firma digital Control de acceso Integridad de datos Intercambio de autenticación Relleno de tráfico Control de encaminamiento Notarización Cifrado es un mecanismo destinado a proteger el contenido de un mensaje mediante el uso de algoritmos matemáticos que transforman los datos originales. Como resultado se obtiene una secuencia de bits indescifrables para cualquier usuario no autorizado. Firma digital es un mecanismo que utiliza herramientas criptográficas para autentificar el origen, garantizar la integridad de los datos y ofrecer protección contra falsificaciones. Control de acceso abarca una variedad de mecanismos que establecen la política de derechos de acceso a los recursos. Este mecanismo requiere la autenticación y posteriormente la autorización para acceder a los recursos que se desee proteger. Integridad de datos abarca una variedad de mecanismos utilizados para asegurar la integridad de un mensaje o de un flujo de datos. Intercambio de autenticación el objetivo de este mecanismo es asegurar la identidad de una entidad mediante un intercambio de información. Tráfico de Relleno es un mecanismo que inserta bits en un flujo de datos para impedir que tenga éxito un ataque por análisis de tráfico. Control de encaminamiento permite que un mensaje cuando atraviesa una red de telecomunicación siga unos determinados enlaces y permite cambios en las rutas, especialmente cuando se detecta que hay un problema de seguridad. Notarización es un mecanismo que utiliza terceras partes de confianza para garantizar ciertas propiedades en un intercambio de datos. Seguridad perimetral es un mecanismo que permite aceptar o bloquear datos procedentes o destinados a un ordenador concreto ubicado fuera de la red local. Mapeo entre servicios y mecanismos de seguridad Un servicio de seguridad a veces requiere la implantación de diversos mecanismos de seguridad. La siguiente gráfica ilustra la relación entre servicios y mecanismos de seguridad.

5.3.1 Malware, amenazas y ataques

Concepto de software malicioso (malware)

Software malicioso (malware) es un término genérico que hace referencia a cualquier software dañino instalado en un sistema, diseñado para ejecutar instrucciones no deseadas en un ordenador, sin el consentimiento del usuario. La ejecución de malware puede degradar la velocidad de las tareas que un usuario desea realizar en su ordenador y también puede obtener información crítica u obtener acceso no autorizado a un sistema informático. Malware no es lo mismo que software defectuoso, este último es software que tiene un propósito legítimo, pero contiene errores que no fueron detectados antes de su despliegue. De hecho, los virus informáticos son en realidad un subconjunto de la familia de malware, donde también se incluyen los gusanos, troyanos, adware, spyware, rootkits, etc... Hoy en día, la mayoría de los programas maliciosos se distribuyen a través de Internet. Uno de los métodos más comunes que se conoce como "drive-by download". El archivo malicioso se descarga a través de la web o por correo electrónico como fichero adjunto, y se ejecuta. En muchos casos, se engaña al usuario haciéndole creer que un determinado programa le puede resultar muy útil. En otros casos, el usuario no es consciente de estar infectado y visita una página Web que se aprovecha de las vulnerabilidades de su navegador web para descargar y ejecutar el malware. Prácticamente cualquier protocolo de Internet puede ser utilizado para distribuir malware, por ejemplo, la mensajería instantánea o P2P. Por otra parte, es importante recordar que los dispositivos de almacenamiento físicos pueden propagar el malware, es muy común la distribución a través de los pen drives USB.

Page 154: Módulo I. Desarrollo de habilidades del pensamiento lógico ...prouniversitarios.org/site/recursos/material-de-apoyo/tecnologias-de... · Módulo I. Desarrollo de habilidades del

Clasificación de malware

El malware puede ser clasificado de diferentes maneras de acuerdo a diferentes criterios: mecanismos de distribución, métodos de instalación del sistema, la forma en que son controlados remotamente, etc. Actualmente los ejemplares de malware suelen tener muchas características, por lo que normalmente se clasifican de acuerdo a su función principal. Por ejemplo, podría haber un caballo de Troya con capacidades de rootkit y que puede permanecer oculto tanto a soluciones de seguridad como a usuarios expertos. También podría estar instalado en un equipo que forme parte de una red de ordenadores infectados y controlados a distancia. Al mismo tiempo, podría hacer que aparezcan anuncios y capture las pulsaciones de teclado, por lo que también sería parte de las familias de programas publicitarios y keylogger. Es decir, sería un caballo de Troya-rootkit-bot-adware-keylogger... Todo en uno de hecho, este ejemplo es bastante común Una primera clasificación de programas maliciosos se basa en la necesidad de un archivo de host para propagarse. Los siguientes cuatro tipos de software malicioso se corresponden a malware que requieren dicho archivo: Puertas trampa (Trap doors), Bombas lógicas (Logic bombs), Caballos de Troya o troyanos, Virus. Hay dos tipos de software malicioso que no necesitan un archivo de host para su propagación. Son: Gusanos (Worms) Zombies. Las puertas trampa son como entradas ocultas en el programa que permiten conseguir el acceso al sistema, evitando los mecanismos de seguridad. Estos mecanismos son utilizados por los programadores durante la depuración de programas para evitar el uso de mecanismos de autenticación y obtener así privilegios especiales. El software malicioso busca estas trampas para evitar los mecanismos de seguridad. Las consecuencias en el sistema informático suelen ser graves. Las bombas lógicas constituyen la clase de software malicioso más antigua. Es un software integrado en un programa legítimo que se activa cuando se dan algunas condiciones. Un ejemplo de estas condiciones puede ser la presencia o ausencia de un archivo específico en días preestablecidos, semana o fecha de inicio de una aplicación determinada… Una bomba lógica puede causar pérdida o daños en el sistema de información, por ejemplo, puede borrar algunos archivos, dejar de ejecutar aplicaciones y así sucesivamente ... Los troyanos son programas o comandos, que realizan procedimientos o procesos útiles, y al mismo tiempo realizan actividades maliciosas en segundo plano como 28 borrado de datos. Un caso particular es el spyware, un software que captura las contraseñas introducidas a través del teclado, recopila la información sobre las páginas web visitadas, el tipo de software que está utilizando en el equipo, … y toda esa información recopilada se envía a través de Internet. Los virus son programas capaces de conectarse a otro programa o archivo y pueden ejecutar acciones no autorizadas. Para su propagación es necesario que el archivo host pueda ser modificado por el virus. Los virus pueden atacar a otros archivos, propagarse y corromper sistemas de información. Un gusano puede propagarse de un sistema informático a otro si los dos sistemas están interconectados por la red. La propagación del gusano se realiza por ejemplo mediante el uso de correo electrónico. Un zombi es un software malicioso que se propaga a través de la red. Después de penetrar con éxito en un sistema informático, el ordenador infectado puede ser controlado y administrado remotamente. Cuando varios ordenadores están infectados por el mismo tipo de software malicioso y controlado por un ordenador remoto, se denomina botnet. Este ordenador remoto puede forzar a los ordenadores infectados a ejecutar las mismas órdenes, dando lugar a los ataques de denegación de servicio distribuido DDoS (Distributed Denial of Service). Ciclo de vida de un virus

El ciclo de vida de un virus consta de cuatro fases: Fase latente, Fase de propagación, Fase de activación, Fase de ejecución

Page 155: Módulo I. Desarrollo de habilidades del pensamiento lógico ...prouniversitarios.org/site/recursos/material-de-apoyo/tecnologias-de... · Módulo I. Desarrollo de habilidades del

En la fase latente: el virus permanece inactivo, por lo que no realiza ninguna actividad. Es necesario tener en

cuenta que no todos los virus tienen esta fase en su ciclo de vida. En la fase de propagación el virus incrusta una copia idéntica en otro programa o en un sector del disco. Así pues, cada programa infectado incluye clones de virus capaces de propagarse. En la fase de activación el virus inicia su estado activo. Esta fase tiene su inicio cuando se cumplen ciertas condiciones o estados del programa infectado. En la fase de ejecución el virus realiza la actividad para la que se programó durante su creación. Por lo general, son actividades destructivas y pueden causar pérdidas de información en el sistema informático infectado. Software antivirus

El software antivirus o anti-virus se usa para prevenir, detectar y eliminar el malware, incluyendo pero sin limitarse a los virus informáticos, gusanos, troyanos, spyware y adware. Para ser eficaz, el software antivirus debe ser actualizado periódicamente - de lo contrario no será capaz de ofrecer protección contra nuevos virus. El término utilizado para la limpieza de un ordenador es la erradicación de virus. Hay varios métodos de erradicación: Eliminar el código que se corresponde con el virus del archivo infectado; Eliminar el archivo infectado; Poner en cuarentena el archivo infectado, lo que implica su traslado a un lugar donde no se puede ejecutar. Se suelen emplear distintas estrategias: Detección basada en firmas consiste en la búsqueda de patrones conocidos en un código ejecutable. Los virus se reproducen infectando las "aplicaciones host" lo que significa que se copia una porción de código ejecutable en un programa existente. Los virus están programados para no infectar el mismo archivo varias veces con el fin de tener la certeza que funcionan según lo previsto. Para ello, se incluyen una serie de bytes en la aplicación para comprobar si ya ha sido infectada, esto se denomina firma de virus. Dicha firma es única para cada virus. Los programas antivirus intentan detectar la presencia de esta firma para decidir si el archivo está infectado o no. Este método se denomina detección basada en firmas y es el método más antiguo utilizado por el software antivirus. Sin embargo, este método no puede detectar virus cuyas firmas no han sido archivadas por los editores del software antivirus. Además, los programadores de virus a menudo utilizan técnicas de camuflaje para dificultar la detección de las firmas. Un tipo de enfoque heurístico son las firmas genéricas que pueden identificar virus nuevos o variantes de los virus existentes a partir del conocimiento de código malicioso conocido o ligeras variaciones de dicho código. El método heurístico analiza el comportamiento de las aplicaciones con el objetivo de detectar actividad similar a la de un virus conocido. Por lo tanto, este tipo de programa antivirus puede detectar virus, aun cuando la base de datos antivirus no haya sido actualizado. Sin embargo, en estos esquemas podemos encontrarnos con falsas alarmas, es decir, que el antivirus identifique a un software totalmente correcto como malicioso. Independientemente de las prestaciones que ofrezca un software antivirus, a veces puede tener inconvenientes. El software antivirus puede empeorar el rendimiento de un ordenador. Los usuarios inexpertos pueden tener problemas para entender las indicaciones y decisiones que el software antivirus les presenta. Una decisión incorrecta puede dar lugar a una brecha de seguridad. 5.4 Seguridad en redes TLS Transport Layer

Security (TLS) es un protocolo estándar de Internet que proporciona seguridad de las comunicaciones a través de Internet. El objetivo principal de este protocolo es proporcionar confidencialidad e integridad de datos entre dos entidades que se comunican. Un uso importante de TLS es proteger el tráfico de la World Wide Web permitiendo transacciones seguras de comercio electrónico. Asimismo este protocolo se utiliza para proteger otras aplicaciones como puede ser el correo electrónico. TLS se utiliza ampliamente en aplicaciones tales como la navegación web, correo electrónico, fax por Internet, mensajería instantánea y voz sobre IP (VoIP). TLS se basa en un protocolo anterior, Secure Sockets Layer (SSL), desarrollado por Netscape Communications. Ambos protocolos (TLS y SSL) utilizan algoritmos criptográficos y certificados de clave pública para verificar la identidad de las entidades que se comunican y para el intercambio de claves simétricas. Esta autenticación puede ser opcional, pero generalmente se requiere para al menos una de las dos entidades comunicantes. También utilizan cifrado simétrico para ofrecer confidencialidad, y funciones de hash para la integridad del mensaje. La criptografía simétrica se utiliza para el cifrado de datos. Las claves utilizadas en este cifrado simétrico son únicas para cada conexión. La negociación de esta clave es segura y fiable: un atacante ni siquiera interceptando la comunicación podría conseguir la clave simétrica. Además, ningún atacante puede modificar la comunicación sin ser detectado por las partes en la comunicación. La figura, muestra de forma muy simplificada cómo se establece una sesión TLS para una comunicación web segura entre un usuario y un servidor web.

Page 156: Módulo I. Desarrollo de habilidades del pensamiento lógico ...prouniversitarios.org/site/recursos/material-de-apoyo/tecnologias-de... · Módulo I. Desarrollo de habilidades del

Seguridad en el correo electrónico

Por lo general, cuando el contenido de un correo electrónico es abierto para cualquier persona. Es decir, como norma general, enviar un correo electrónico es como enviar una postal: cualquier persona que la intercepte puede leer su contenido. Si se quiere que el contenido del correo sea confidencial y/o auténtico, es necesario utilizar técnicas criptográficas. En el caso de la confidencialidad, sólo el destinatario podrá descifrar el mensaje, mientras que el resto de personas vería un galimatías. Las soluciones más aceptadas para proporcionar seguridad del correo electrónico son S/MIME y PGP. S/ MIME es un estándar que ofrece los siguientes servicios de seguridad: autenticación, integridad de mensaje, no repudio de origen (usando firma digital) y la confidencialidad de datos (mediante cifrado). El uso de S/MIME requiere certificados digitales. La figura, muestra cómo opera S/MIME para ofrecer el servicio de confidencialidad.

Page 157: Módulo I. Desarrollo de habilidades del pensamiento lógico ...prouniversitarios.org/site/recursos/material-de-apoyo/tecnologias-de... · Módulo I. Desarrollo de habilidades del

5.5 Seguridad en dispositivos móviles, virtualización y nube

En las últimas décadas las comunicaciones móviles han sorprendido a la humanidad con su evolución; las ventajas, privilegios y comodidades de poderse comunicar desde cualquier lugar del mundo sin depender de cables externos o cabinas telefónicas es sorprendente. Pero lo que verdaderamente se pretende destacar con este documento son los aspectos que enmarcan la gestión de seguridad en este tipo de redes móviles, pues la generación actual (3G) ofrece servicios de banca y comercio electrónico en donde se pueden realizar consultas, transacciones, movimientos de cuentas, pagos y demás utilidades, que ofrece una entidad bancaria desde su teléfono móvil con un modelo de seguridad no del todo fiable. Se presentarán los actuales modelos de seguridad para GSM, los que utilizará UMTS y de los que seguramente dependerán los de cuarta generación. De igual manera se presentará un análisis general de ellos y una invitación abierta a los futuros ingenieros para que incluyan en sus diseños de planificación y dimensionado la garantía del servicio. Ahora bien, si el arma más efectiva de cualquier atacante bien intencionado o no, es la habilidad para encontrar defectos de un sistema, que a simple vista no resulten evidentes para los diseñadores o los mismos usuarios, se podría afirmar que la mejor forma de perfeccionar la seguridad de la misma es burlándola. Aparentemente los diseños de seguridad en redes móviles brindan la confianza suficiente para realizar aplicaciones comerciales, pero los modelos de seguridad, aún presentan algunas limitantes. Se prevé, según los expertos, que en el año 2020 saldrá al mercado la cuarta generación de comunicaciones móviles, en donde el usuario es quien elige el operador a gusto personal, desde cualquier punto del planeta con una tarifa única de servicio. Estas ventajas resultan altamente sorprendentes y las comodidades serían aún innumerables. Conociendo los inconvenientes que todavía presentan los sistemas de comunicaciones móviles en una región en particular como cobertura, seguridad, colisión de llamadas, tiempo de respuesta entre otros. ¿Resulta confiable o mejor aún, “seguro”, realizar transacciones bancarias y/o comerciales desde un lugar hipotético a otro en circunstancias similares?. Si la telefonía fija de banda ancha, posiblemente inalámbrica, la telemática ó teleinformática y las comunicaciones móviles, apuntan hacia lo que seguramente en pocos años llamaremos mobile IP, ¿Existirá una verdadera gestión de seguridad para estos tres tipos de sistemas, con protocolos, funcionamientos y servicios diferentes, soportados bajo una misma plataforma en una cobertura mundial?... Principios básicos

En la actualidad se identifican dos mecanismos de seguridad, los específicos en los que se encuentran: cifrado, firma digital, integridad de datos, mecanismos de control de acceso , intercambios de autenticación, control del rutado, funciones de relleno de tráfico (Traffic Padding) entre otros y los mecanismos pervasivos los cuales no son ligados a un servicio de forma específica como la detección de eventos, etiquetas de seguridad, auditorias de seguridad y la cobertura de la seguridad entre otros. Estos tipos de mecanismos hacen referencia a los dos modelos de seguridad existentes, el de Seguridad de red y el de Seguridad de Acceso. En el primer modelo, el de red, la información se protege en el emisor por medio de algoritmos de encriptación (claves) y se transmite por un canal en donde posiblemente un individuo no autorizado puede tener acceso a la confidencialidad, sin embargo, la información inicial solamente podrá ser recuperada por el destinatario ya que es quien dispone de los mecanismos (algoritmos y claves) necesarios para deshacer las modificaciones realizadas por el emisor, en la negociación de claves entre las partes implicadas puede intervenir una tercera entidad que se podría denominar de “confianza” (Trusted Third Party). En el modelo de seguridad de acceso, existe un control de admisión a la información o recursos de un sistema ante la presencia de posibles individuos no autorizados, en la mayoría de los casos se utilizan técnicas criptográficas. Cuando se habla de criptografía, se hace una simple referencia al estudio de mecanismos de cifrado de la información que cubre básicamente dos campos: Códigos: quienes reemplazan una palabra o conjunto de ellas por otras con distinto significado y Algoritmos de Cifrado (Ciphers): cuya funcionalidad es transformar un mensaje en claro en un mensaje ininteligible a menos que se disponga de una clave o conjunto de ellas. La criptografía también se considera como una técnica de protección de la información que engloba disciplinas tales como teoría de la información, teoría de los números y complejidad algorítmica. Pero todo esto apunta hacia lo que se denomina criptoanálisis, que no es más, que el estudio de las debilidades de un sistema criptográfico llamado comúnmente criptosistema. Todo criptosistema debe cumplir la condición: DK(EK(m))=m en donde: E: función de cifrado D: función de descifrado K: clave usada en el cifrado/descifrado m: texto sin cifrar (mensaje en claro) EK(m): mensaje cifrado

Page 158: Módulo I. Desarrollo de habilidades del pensamiento lógico ...prouniversitarios.org/site/recursos/material-de-apoyo/tecnologias-de... · Módulo I. Desarrollo de habilidades del

Garantizando la no perdida de la información. Los mecanismos criptográficos se pueden caracterizar por los siguientes aspectos: Tipología de las operaciones de cifrado utilizadas: Substitución, Transposición, Producto (combinación de las dos anteriores) Numero de clave: Clave única o privada Mecanismo de proceso del texto en claro: Codificadores de bloque (block ciphers), Codificadores de flujo (stream ciphers) Aspectos de seguridad en GSM

El planteamiento inicial de los mecanismos de seguridad en GSM era proporcionar a la red celular el mismo grado de seguridad que tiene la red telefónica convencional. A nivel del operador, facturar al usuario correcto, evitar fraudes y proteger el servicio y a nivel de clientes, la privacidad y el anonimato eran el objetivo primordial. En la situación actual, GSM sólo proporciona access security, es decir que las comunicaciones y la señalización en la red de transporte no están protegidas. La seguridad de la red GSM depende en gran medida de la seguridad de las redes a las que se conecta. La intercepción de llamadas se introdujo luego, la identidad del terminal no puede ser contrastada y existe una dificultad de actualización de los mecanismos criptográficos. De igual manera se presentan cinco tipos de ataques a las redes GSM: Eavesdropping: Es la capacidad del intruso de capturar señalización o datos de los usuarios. El equipo requerido es un MS modificado Suplantación de la identidad de un usuario: El equipo necesario es un terminal modificado. 3. Suplantación de red: El equipo requerido es una BTS modificada. 4. Man-in-the-middle: Se necesita una BTS y un terminal, ambos modificados 5. Robo de vectores de autenticación en la red: El intruso dispone de pares pregunta/respuesta y claves de cifrado que pudieron haberse obtenido mediante el acceso a nodos de la red o a enlaces fijos en la misma. El orden en que se presentan los ataques está relacionado con la dificultad de realización o disponibilidad del equipo necesario, para GSM se pensó en combatir los dos primeros. En GSM la gestión de claves es independiente del equipo, es decir que los usuarios pueden cambiar de terminales sin comprometer la seguridad y la protección de la identidad del suscriptor es otra ventaja, pues se utilizan identificadores temporales que dificultan esta labor, por ejemplo los TMSI (Temporary Mobile Subscriber Identity), que son los que proporcionan un anonimato. También el operador conoce quien está utilizando el sistema por medio de un mecanismo de autenticación de usuario, pero de igual manera existe una protección de la señalización y los datos del usuario, ya que ambos se transmiten encriptados por el canal radio. En el mercado existen los GSM Mobile Station que consisten en dispositivos físicos con utilidades de identificación física y brindan un soporte a la seguridad en sistemas GSM a nivel global por medio de dispositivos de identidad internacional conocidos como IMEI (International Mobile Equipment Identity). También existen módulos de identificación de suscriptores, el más común es la SIM (Subscriber Identity Module), que consiste en una pequeña tarjeta que contiene llaves de acceso, identificadores y una serie de algoritmos. Dentro de los identificadores se pueden encontrar: Ki (Subscriber Auhtentication Key) de 128 bits, IMSI (International Mobile Subscriber Identity), TMSI (Temporary Mobile Subscriber Identity) MSISDN (Mobile Station International Service Digital Network), PIN (Personal identity Numbre Protecting a SIM) y finalmente las denominadas LAI (Location Area Identity) que son las utilizadas por la mayoría de las redes locales.

Page 159: Módulo I. Desarrollo de habilidades del pensamiento lógico ...prouniversitarios.org/site/recursos/material-de-apoyo/tecnologias-de... · Módulo I. Desarrollo de habilidades del

Autenticación y encriptado

Obsérvese que la información en el canal radio está encriptada entre el Mobile Equipment (ME) y la Base Transceiver Station (BTS), allí se utiliza la clave de encriptado Kc derivada durante la autenticación. La AuC Authentication Center) es la que proporciona los parámetros para la autenticación y encriptación (RAND, SRES, Kc), luego el HLR (Home Location Register) proporciona a la MSC (Mobile Switching Center) información con tripletas (RAND, SRES, Kc) y el VLR (Visitor Location Register) es quien guarda las tripletas recibidas provenientes desde el HLR cuando un usuario no se encuentra en su Home Network. La encriptación en GPRS presenta algunas diferencias con el encriptado de los servicios GSM en modo circuito.

En GPRS la encriptación se extiende hasta el SGSN y se aplica en una capa superior de la torre de protocolos, exactamente en la capa de enlace lógico. También se presentó un nuevo algoritmo de cifrado denominado GEA (GPRS Ecryption Algorithm), quien es el que genera la secuencia de cifrado en función de la clave de cifrado y del número de secuencia LLC Frame number (Logical Link Layer). Vale la pena aclarar que el contador de tramas LLC es lo suficientemente largo como para evitar la repetición de la secuencia de cifrado. Los algoritmos comunes son los GEA1, GEA2 y GEA3, todos se encuentran estandarizados para que los terminales y las redes puedan operar globalmente, las especificaciones de los mismos, aún se mantienen como distribución restringida Existen importantes limitaciones en la seguridad de GSM debido al diseño propuesto inicialmente. El diseño actual sólo proporciona access security, las comunicaciones en la red no están protegidas por lo que se pueden presentar Eavesdropping, dejando parámetros de confiabilidad como la negociación del algoritmo de cifrado entre MS y la red SN (Service Network) al descubierto, por no establecer un acuerdo mutuo en las claves de cifrado. Lecciones para futuros diseñadores de red móvil

La seguridad debe ofrecerse sin la ayuda del usuario, pero éste debe saber todos los acontecimientos. Se deben desarrollar estándares internacionales, independientes de las ventajas que ofrecen los operadores. Contemplar la posibilidad de abordar la intercepción de llamadas por ley como base de diseño, especialmente cuando se consideran soluciones no seguras extremo a extremo, como medio de verificación de trama. Basar la seguridad del usuario en tarjetas inteligentes con único usuario y para múltiples accesos en ráfagas controladas para la autenticación de la misma. La posibilidad de que exista un ataque es un problema para toda la red y los elementos que la componen, aunque sea poco probable o se manifieste con prioridad baja, se deben tener en cuenta elementos de red fija y de canal radio, esto incluye elementos de transmisión y recepción de señal.

Page 160: Módulo I. Desarrollo de habilidades del pensamiento lógico ...prouniversitarios.org/site/recursos/material-de-apoyo/tecnologias-de... · Módulo I. Desarrollo de habilidades del

Bibliografía:

HERNANDO, José María, Comunicaciones Móviles, 751 páginas, Fundación Airtel, Madrid, 2000 RAMON, Calvo Miguel, Sistemas de Comunicaciones Móviles de Tercera Generación IMT-2000 (UMTS), 630 páginas, Fundación Airtel, Madrid, 2002. Especificaciones UMTS: http://www.3gpp.org, 2004 Especificaciones CDMA2000:http://www.3gpp2.org, 2004 STALLINGS, Williams. Criptography and Network Security. Third Edition. Prentice may,364 páginas.2003 GRAFF, Jon C. Criptografy amd E-Commerce, Second Edition, John Wiley & Sons, 227 páginas 200 Armstrong, D. (1996). The Quarks of Object-Oriented Development. Communications of the ACM. 49(2). Pp. 123 - 128. Sooch, G.; Maksimchuk, R.; Engle, M.; Young, S.; Conallen, J. y Houston, K. (2007). Object-Oriented Analysis and Design with Applications (Tercera ed.). USA. Pearson Education Inc. Ceballos, F. (2003). Java 2: Curso de Programación (Segunda ed.). México. Alfaomega Grupo Editor. Coto, E. (2002). Lenguaje Pseudoformal para la Construcción de Algoritmos. (Tech. Rep. NO 2002-08). Venezuela. Fondo Editorial de la UCV. Deitel, H. y Deitel P. (1995). Cómo Programar en C/C++ (Segunda ed.). México. PrenticeHall Hispanoamericana, S.A. Deitel, P. y Deitel, H. (2009). Cómo Programar en C++ (Sexta ed.). México. Pearson Educación de México, S.A. de C.V. Instructional Software Research and Development (ISRD) Group. (2007). Introduction to Object Oriented Programming and C++. India. Tata McGraw Hill Publishing Company Limited . Joyanes, L. (1996). Programación Orientada a Objetos (Segunda ed.). España. McGraw Hilllnteramericana de España S.A. Joyanes, L. (2008). Fundamentos de Programación (Cuarta ed.). España. McGraw Hill Interamerica S.A. LaLonde, W. y Pugh, J. (1990). Inside Smalltalk, Volume 1. USA. Prentice-Hall, Inc.

Page 161: Módulo I. Desarrollo de habilidades del pensamiento lógico ...prouniversitarios.org/site/recursos/material-de-apoyo/tecnologias-de... · Módulo I. Desarrollo de habilidades del