CATEDRA 0 1 Facultad de Ingeniería de Minas, Geología Y Civil Departamento académico de ingeniería de minas y civil METODOS NUMERICOS Ingeniería Civil ING. CRISTIAN CASTRO P. Capitulo I I t d Introducción ió ING. CRISTIAN CASTRO P. Computación Numérica: Como? P Porqué? é? Problemas reales M d l matemáticos Modelos t átic Análisis Numérico R l i Resoluciones eficientes fi i t (con computadores…) Aplicaciones en áreas como: •Ciencias Ciencias Sociales •Economia •Ingeniería g •Medicina ... Introducción a los Métodos Numéricos Pasos para la resolución de problemas REFINAMIENTO MODELAMIENTO PROBLEMA RESULTADO DE CIENCIAS AFINES MEDICIÓN RESULTADO NUMÉRICO SELECCIÓN DE MÉTODOS TRUNCAMIENTO DE ITERACIONES SELECCIÓN DE PARÁMETROS Introducción a los Métodos Numéricos Flujograma j g – Solución Numérica MODELO MATEMÁTICO PROBLEMA modelamiento LEVANTAMIENTO DE DADOS PROBLEMA CONSTRUCCIÓN DEL MODELO MATEMÁTICO SOLUCIÓN Ó resolución ESCOGER MÉTODO NUMÉRICO IMPLEMENTACIÓN COMPUTACIONAL ANÁLISIS DE RESULTADOS VERIFICACIÓN Introducción a los Métodos Numéricos Panorama PROBLEMAS REALES ((tecnología, g , ingeniería, g , industria,, etc ) Contextualizació n EMPRESAS ENTIDADES Ingeniería matemática Contextualización, Adaptación de modelos físicos, implemetación numérica MATEMÁTICAS FÍSICA Análisis Modelado y tipos de modelos ¿QUÉ ES EL MODELADO? • Los procesos y sistemas en ingeniería son generalmente complicados y deben ser simplificados por idealizaciones y aproximaciones para resolver el problema planteado. • El p proceso de simplificación p del p problema, p para q que pueda ser representado en términos de un sistema de ecuaciones (para el análisis, diseño y optimización) o a través de un arreglo físico (para experimentación), es lo que se conoce como modelado ¿Qué es un modelo modelo? ? X X Modelo de moda X Modelo matemático Modelaje en perspectiva perspectiva… … • En muchas situaciones, se debe tomar una decisión importante con información incompleta. • Dos elecciones: • Tomar la decisión con base solamente en intuición, intuición o “ modelos mentales” • Tomar la decisión con base en múltiples fuentes de información, inclusive modelos cuantitativos • La segunda resultados elección conduce a mejores Salidas Llegadas Sistema La Pascalina • Fabricada en 1642 por el francés filósofo matemático Blaise Pascal, Pascal a los 19 años. Se le considera el “Padre Padre de la Computadora Computadora”. En su honor, honor existe un lenguaje de programación con su nombre. • El principio básico de esta máquina calculadora se usa todavía en nuestros días en algunos pluviómetros y cuenta kiló t kilómetros. •Sólo el mismo Pascal era capaz de arreglarla. •Se considera el primer antecedente de tecnofobia, puesto que los matemáticos p se opusieron p a ella,, ante la de la época eventualidad de que sus trabajos empezaran a no ser necesarios. Calculadora Universal • Gottfried Leibniz (1646-1716), filósofo y matemático alemán desarrolló en 1694 una máquina multiplicadora. •Esta máquina era mucho más avanzada que la que había inventado Pascal y a la que llamó “calculadora secuencial”. • Esta máquina efectuaba adiciones, sustracciones, multiplicaciones divisiones y evaluaba raíces multiplicaciones, cuadradas. •Demostró las ventajas de utilizar el sistema bi i en lugar binario l d l decimal del d i l en las l computadoras d mecánicas. •Se le acredita el haber comenzado el estudio formal de la lógica, base de la programación y de la operación de las computadoras. Tarjetas Perforadas • Basile Bouchon : utilizó hacia 1725 , p papel p p perforado en un telar p para definir el ppatrón que se producía sobre la ropa. • Jean Baptise Falcón : en 1728 junto con Basile Bouchon produjo un telar mejorado, mejorado que en vez de utilizar el papel perforado, usaba una secuencia de tarjetas. Se comenzaba a controlar una máquina con instrucciones codificadas. • Joseph p Marie Jacquard q (1752 1752-- 1871) 1871): en 1801 perfecciona la primera máquina que utiliza tarjetas perforadas; ésta era un telar, que podía tejer automáticamente diseños complejos, complejos de acuerdo a un conjunto de instrucciones codificadas en las tarjetas perforada. Este invento años más tarde fue empleado para permitir a los computadores almacenar y leer datos. datos Maquina Diferencial • Charles Babbage matemático e ingeniero británico. • Su trabajo se desarrolló, principalmente, en lo que hoy se conoce como "investigación de operaciones“. • Desarrolla tablas actuariales tan exactas que aún hoy en p de seguros g las usan. día, las compañías • Corrigió los errores que tenían las tablas de logaritmos. • Elaboró varias tablas astronómicas e inclusive inventó el primer cuenta kilómetros de la historia. historia • En 1822 empezó a diseñar “la máquina analítica” (1833). • Esta máquina supero exitosamente todo lo que se había inventado hasta entonces, entonces en ella se combinaban las operaciones aritméticas básicas con procesos de decisión. • La máquina tenía una unidad de entrada y otra de salida, usando d la l idea id de d las l tarjetas j perforadas. f d • Esta máquina era, en esencia, una computadora de aplicación general, por lo que Babbage es considerado el precursor de la computadora. Primer Programador … •Ada Augusta Byron colabora en la concepción de la máquina analítica de Babbage. •Una de sus geniales ideas fue la de que un cálculo grande podía p de la misma secuencia de contener muchas repeticiones instrucciones. Luego, usando un salto condicional sería posible preparar solamente un juego de tarjetas para las instrucciones recurrentes. recurrentes •Así describió lo que nosotros ahora llamamos un "bucle" y una "subrutina". •Ada diseñó por sí misa un programa para la máquina de Babbage que calculaba los números de Bernoulli. Éste es el primer programa de computadora que se reconoce. p como la p primera p programadora g de Computadoras p de la •Es reconocida y respetada historia, y en honor de quien se puso el nombre de ADA al conocido lenguaje de programación Otros Personajes… Personajes George Boole Boole:: desarrolló en 1847 un nuevo tipo de álgebra ((álgebra g de Boole)) e inició los estudios de lógica g simbólica. Esta teoría de la lógica es la base del desarrollo de los circuitos de conmutación tan importantes en telefonía y en el diseño de las computadoras electrónicas. Burroughs (EEUU, 1855-1898). Terminó de construir su primera sumadora en 1885, 1885 pero la •Terminó máquina no lograba hacer los cálculos con velocidad. •En 1886 fundó la compañía American Arithmometer. •En 1888 logró perfeccionar su sumadora y patentarla. patentarla •En 1892 la máquina comenzó a producirse en serie y muchos bancos y compañías contables la compraron. •En 1905, ell nombre b de d su compañía se cambió bi all de d Burroughs h Adding Machine Company. Por muchas décadas más fue la compañía más importante en diseño -venta de máquinas sumadoras. Otros Personajes… Personajes Herman Hollerith Hollerith:: especialista en estadística. • Creó la máquina tabuladora (1887) para realizar el procesamiento de datos del censo de los Estados Unidos. • Conteos que demoraban normalmente 9 años pasan a ser realizados en tan solo 2 años. años Hollerith además crea la empresa ‘Tabulating Machine Company (1896)’ que más tarde se fusionó con otras tres compañías y formaron ‘Internacional Business Machines Corporation (IBM)’. Otros Personajes… Personajes Von Neumann Neumann: En 1946, en colaboración con Arthur W. Burks y Herman H. Goldstine, escribió “Preliminary Discussion of the Logical Design of an Electronic p g Instrument”. Las ideas contenidas en este Computing artículo, dan forma a la Arquitectura Von Neumann, base para la construcción de todos los computadores hasta el momento. •El concepto central consiste en almacenar programas y datos, en el mismo medio ( (memoria). ) •Transforma la ENIAC en una máquina programable por el usuario a través del almacenamiento de programas. Diseñó la EDVAC, EDVAC acrónimo de Electronic Discrete Variable Automatic Computer, Computer que •Diseñó fue la primera máquina en usar cintas magnéticas. •Fue el primero en usar la aritmética binaria en una computadora electrónica. •Además la Máquina de Von Neumann crea el concepto de la Unidad de control. control Otros Personajes… Personajes Alan Turing Turing: Gran matemático, lógico y teórico de la computación. En 1936, publicó el artículo "On computable numbers", que estableció las bases teóricas para la p moderna. computación En él describió lo que después se llamó la "Máquina de Turing": un dispositivo teórico que leía instrucciones de una cinta de papel perforada y ejecutaba todas las operaciones de una computadora. El artículo también fijó los límites de las ciencias de la computación al demostrar que existen problemas que ningún tipo de computadora podrá resolver. resolver En 1938 construyó "Colossus", una máquina cuyo propósito era descifrar el código secreto militar alemán y que fue terminada i d en 1943. 1943 En E la l actualidad lid d se le l considera id l la primera computadora digital electrónica. Nacen los Ordenadores ABC •Primera computadora digital electrónica automática desarrollada entre los años de 1937 a 1942. •ABC = Atanasoff–BerryComputer. Conteniendo el nombre de su inventor John Vincent Atanasoff y el de su ayudante Clifford Berry. •Capaz de resolver con un alto grado de exactitud ecuaciones simultáneas de hasta 29 incógnitas. N Nacen llos O Ordenadores d d MARK 1: Primera computadora electro-mecánica (1944). •Howard Aiken (1900-1973), (1900 1973) graduado de física de la Universidad de Harvard, con el apoyo de IBM, construye la Automatic Sequence Controller Calculator (ASCC). •Esta E basada b d en los l descubrimiento d bi i d Babbage de B bb con su “Máquina “Má i analítica”. •Construida a base de relés, dispositivos electromecánicos para regular y dirigir la corriente en un circuito (700,000 aprox.). •Trabajaba con código decimal, realizaba las cuatro operaciones básicas. g para sumar o restar;; dos segundos p g multiplicando p •Velocidad: un ppar de décimas de segundo dos números de once cifras y dividía en poco más de cuatro segundos. • La memoria se gobernaba manualmente por una serie de interruptores. • Las instrucciones se ingresaban por medio de cinta perforada y la salida se obtenía en dos impresoras / listadoras o directamente a cinta perforada. •Media 15 mts. de largo x 2,4 mts. de alto. Estaba formada por 800.000 piezas y más de 804 Km de cable. cable • Posteriormente se construyeron Mark II y Mark III Nacen los Ordenadores ENIAC (Electronic Numerical Integrator And Calculator) Calculator) •Creada en 1947 por los ingenieros Presper Eckert y John W. Mauchly, de la Universidad de Pennsylvania. •El objetivo principal de su construcción fue: El calculo de tablas de trayectoria de proyectiles. •17.468 tubos de vidrio al vacío (más resistencias, condensadores, etc.), con 32 toneladas de peso, 2.40 de ancho y 30 metros de largo. • La velocidad de cálculo era entre 500 y 1000 veces superior a las calculadoras electromecánicas de su tiempo, casi la velocidad de las calculadoras de bolsillo de hoy. • 5,000 5 000 sumas o restas y 300 multiplicaciones por segundo. segundo • Consumo de energía de 150 kilowatts por hora aproximadamente (equivalente al consumo de un gran bloque de casas o de mil lavadoras) •Es E considerada id d la l primera i computadora t d electrónica. l t ó i •Fue finalmente retirado del servicio activo en 1955, habiendo trabajado durante 9 años. Nacen los Ordenadores ENIAC Eckert y Mauchly N Nacen llos O Ordenadores d d UNIVAC (Universal Automatic Computer Computer)) Nuevamente Presper Eckert y John W. Mauchly son sus creadores (1951) •Nuevamente •Primera computadora en utilizar un compilador (traduce lenguaje de programa en lenguaje de máquina). •Posee un sistema de cintas magnéticas que podían leerse hacia adelante y hacia atrás. atrás •Máquina decimal con 12 dígitos por palabra, instrucciones de una sola dirección y dos instrucciones por palabra. •Su S memoria i era todavía d í de d líneas lí d retardo de d de d mercurio i y tecnología l í a válvulas. ál l •Su sucesor, el UNIVAC II, sustituiría aquella memoria por una de núcleos de ferrita. •El UNIVAC 1103 era una máquina de 36 bits, aritmética por complemento a uno y de punto flotante y, por primera vez, con capacidad de interrupciones. •En 1960 Grace Murray Hooper presentó su primera versión del lenguaje COBOL (Common Business Business-Oriented Oriented Language) para UNIVAC. •En 1952, Univac (no el modelo original sino otra) se utilizó para computar el resultado de las elecciones presidenciales entre Eisenhower y Adlai Stevenson. El resultado (victoria de Eisenhower) se supo 45 minutos después de que cerraron los colegios electorales. N Nacen llos O Ordenadores d d UNIVAC Generaciones de Computadoras Primera Generación (1945…1955): Los tubos de vacio • Construidas básicamente con tubos de vacío y cableado como transmisor de datos. g en lenguaje g j máquina q ((código g binario). ) •Programadas •Utilizan tarjetas perforadas. •Gran tamaño y muy costosas (relación costo-valor). Uso restringido a grandes empresas y organismos •Uso estadales: aplicaciones en el área científico militar. •Comercialización casi nula. •Herman Hollerith funda IBM. IBM •Maquinas de 1era. Generación: UNIVAC, IBM 650. Generaciones de Computadoras Segunda Generación (1955…1965): Circuitos de transistores • El componente p pprincipal p es el transistor: Disminución del tamaño, consumo y producción de calor. •Mayor capacidad de almacenamiento y mayor velocidad. Reducción de espacio físico y costos. costos •Reducción •Aparecen dispositivos magnéticos de almacenamiento externo (cintas y discos). •Nace N l lenguajes j de d programación ió de d alto lt nivel i l como, Cobol C b l (Common Business Oriented Language), Basic (Beginers All purpose Symbolic Instruction Code). •Programas hechos a la medida. •El usuario final no tiene contacto directo con la maquina. p la noción de concurrencia del p procesador. •Aparece •El campo de aplicación se extiende a administrativo. •Aparecen muchas compañías. Maquinas de la 2da. Generacion: Philco 212, UNIVAC M46 •Maquinas 0, IBM 709 y NCR 315 Generaciones de Computadoras Tercera Generación (1965…1975): Circuitos integrados • Construidas en base a circuitos integrados (LSI) en sustitución del transistor. Continua la tendencia de disminución del tamaño. tamaño •Continua •Continua la tendencia de reducción del consumo energético. •Aparecen los sistemas operativos. •Surge S ell concepto t de d Base B d Datos. de D t •Se emplean redes de terminales periféricos. •Aparecen los minicomputadores, pero los Mainframes siguen controlando el mercado. •Mainframes de 3era. Generación: IBM 360, CDC 6000, IBM g 6000. 370, UNIVAC 1110, CDC 7600, Burroughs •Minis de 3era. Generación: DEC, VAX, HP, Siemens. Generaciones de Computadoras Cuarta Generación (1975…): VLSI • Aparece la tecnología VLSI ( Very Large Scale Integration), es decir el Microprocesador (Integración de toda la CPU de un computador en un solo circuito integrado). integrado) •La disminución de tamaño alcanza limites insospechados. •Steves Jobs y A. Wozniak, crean el primer microcomputador de uso masivo i (1977). (1977) Se S funda f d Apple. A l •Aparecen los microcomputadores llamados PC (Personal Computer). •Se desata la llamada Revolución informática. •Aparece el floppy disk como unidad de almacenamiento secundario. •Aparecen gran cantidad de lenguajes de programación. p constante. •Interacción humano-computador •Aparecen las redes de interconexión de computadoras. •Minis y Mainframes de la 4ta. Generación: CDC, CRAY, Hitachi, IBM. Generaciones de Computadoras Quinta Generación: Internet+HTML=Sociedad de la información La masificacion del uso de la Internet crea un estadio nuevo en la computación, redefiniendo su interrelación con la l sociedad. i d d El computador deja de ser fundamentalmente una herramienta de calculo para convertirse principalmente en un medio de comunicación. Este nuevo rol del computador impacta de tal manera a la sociedad que por modificarla económica,, p política,, social y termina p culturalmente, definiendo lo que se ha dado en llamar la Sociedad de la Información, que denota la nueva forma de organización social en el contexto de un mundo signado por el fenómeno de la Globalización. Dispositivos d Entrada de E t d Dispositivos CPU d de Salida Memoria (Almacenamiento) Banderas Unidad D control De t l Registros ALU Registros ALU Entradas y salidas A i Arquitectura dde computadoras d COMPONENTES DE UNA COMPUTADORA CPU UNIDAD DE MEMORIA UNIDAD DE ENTRADA UNIDAD DE CONTROL UNIDAD DE ARITMETICA UNIDAD DE SALIDA CPU UNIDAD DE ENTRADA ENTRADA: MEDIOS PARA RECIBIR INFORMACION UNIDAD DE MEMORIA UNIDAD DE CONTROL UNIDAD DE SALIDA UNIDAD DE ARITMETICA CPU UNIDAD DE MEMORIA UNIDAD DE ENTRADA UNIDAD DE CONTROL UNIDAD DE ARITMETICA UNIDAD DE SALIDA: MEDIOS PARA DAR INFORMACION CPU UNIDAD CENTRAL DE PROCESAMIENTO UNIDAD DE MEMORIA UNIDAD DE ENTRADA UNIDAD DE SALIDA UNIDAD DE CONTROL UNIDAD DE ARITMETICA CPU UNIDAD DE MEMORIA DATOS Y RESULTADOS ALMACENADOS EN CELDAS C/U CON CAPACIDAD DE ALMACENAR UNA UNIDAD DE INFORMACION (PALABRA) UNIDAD DE ENTRADA: UNIDAD DE SALIDA UNIDAD DE CONTROL UNIDAD DE ARITMETICA CPU UNIDAD DE MEMORIA UNIDAD DE ENTRADA ENTRADA: UNIDAD DE CONTROL COORDINA LAS ACTIVIDADES DE LAS DIFERENTES COMPONENTES DE LA COMPUTADORA. ENVIA SEÑALES DE CONTROL COMANDOS Y CONTROL, DETERMINA LA SECUENCIA DE LAS INSTRUCCIONES DADAS. UNIDAD DE SALIDA UNIDAD DE ARITMETICA CPU UNIDAD DE MEMORIA UNIDAD DE ENTRADA ENTRADA: UNIDAD DE CONTROL UNIDAD DE ARITMETICA CONSISTE DE CIRCUITOS ELECTRICOS QUE REALIZAN LAS OPERACIONES ARITMETICAS Y LOGICAS. UNIDAD DE SALIDA REPRESENTACION DE LOS NUMEROS EN LA COMPUTADORA • ENTEROS • REALES SISTEMA DE ARITMETICA DE PUNTO FLOTANTE Organización g y funcionamiento de un computador p (Subsistema I/O, Memoria y Procesador. • Los computadores en realidad sólo hacen 4 cosas: • • • • • Recibir entradas: Aceptan información del mundo exterior. Producir salidas: Reflejan información al mundo exterior. Procesan información: Ejecutan j operaciones p aritméticas-lógicas g Almacenan información: Los datos reposan en algún dispositivo Luego todo L t d sistema it de d cómputo ó t tiene ti componentes t de d hardware h d dedicados d di d a cumplir li estas funciones: • Dispositivos de entrada: Teclado, Teclado ratón, ratón escáner, escáner micrófono, micrófono etc. etc • Dispositivos de salida: Monitor, impresora, cornetas, etc. • Un procesador: Procesa información, ejecutando cálculos aritméticos y tomando decisiones con base en los valores de información. • Memorias y dispositivos de almacenamiento. Memoria • Es un espacio físico electrónico constituido por elementos denominados chips, que permite a la CPU almacenar y recuperar datos en forma muy rápida. rápida RAM (Random Access Memory): • Conjunto de chips ubicados en una pequeña tarjeta de circuitos electrónicos que permite alojar temporalmente los datos del usuario, instrucciones del S.O. y de programas en ejecución. Es una memoria volátil de almacenamiento temporal. ROM (Read Only Memory): • Conjunto de chips que contienen un grupo pequeño de instrucciones que indican a la computadora algunas tareas de importancia relacionadas con la operatividad del sistema. • En los PC esta memoria se llama ROM BIOS, contiene instrucciones que indican a la computadora como acceder a los dispositivos de I/O y buscar el sistema operativo. ti E t memoria Esta i es de d almacenamiento l i t permanente t no volátil látil y contiene ti instrucciones asociadas al proceso de inicialización del sistema. Memoria Caché • Utilizada en informática significa memoria temporal; generalmente de existencia oculta y automática para el usuario, que proporciona acceso rápido a los datos de uso más frecuente o previsible. previsible Memoria Virtual Memoria virtual es un diseño computacional que permite al software usar más memoria principal (RAM) que la que realmente posee la computadora Memoria Secundaria • Un medio de almacenamiento es el disco, cinta, papel u otro objeto que contiene datos. • Un dispositivo de almacenamiento corresponde a aparatos electromecá electromecánicos que registra y recupera información que hay en el medio de almacenamiento. Esta información es de tipo semipermanente y puede posteriormente ser utilizada por el mismo u otro computador. Funcionamiento de la memoria virtual Funcionamiento de un bus de datos Unidades de Medida de Memoria Nombre Abrev. Factor Tamaño en el SI kilo K 210 = 1024 103 = 1000 mega M 220 = 1 048 576 106 = 1 000 000 giga G 230 = 1 073 741 824 109 = 1 000 000 000 tera T 240 = 1 099 511 627 776 1012 = 1 000 000 000 000 peta P 250 = 1 125 899 906 842 624 1015 = 1 000 000 000 000 000 exa E 260 = 1 152 921 504 606 846 976 1018 = 1 000 000 000 000 000 000 Z 270 = 1 180 591 620 717 411 303 42 4 1021 = 1 000 000 000 000 000 000 000 yotta Y 280 = 1024 = 1 208 925 819 614 629 174 70 1 000 000 000 000 000 000 000 000 6 176 Bronto B 290 = 1024 Yottabytes zetta 1027 = 1 000 000 000 000 000 000 000 000 Ley de Moore • La unidad fundamental del procesador es el transistor. • El transistor corresponde al corazón del cómputo digital. digital • En 1965 Gordon Moore, fundador de Intel, dijo que el poder d de d cómputo ó t de d un CPU se duplica cada 18 meses. • El poder de cómputo de un CPU tiene ti relación l ió con la l cantidad de transistores Ley de Moore SOFTWARE Se conoce como software al conjunto de instrucciones detalladas que controlan la operación de un sistema de cómputo. Las funciones que realiza son: • Administrar los recursos de cómputo • Proporcionar las herramientas a los seres humanos para aprovechar el sistema de cómputo • Actuar como intermediario entre la información almacenada y los usuarios Programa de computadora: Conjunto de instrucciones de computadora para llevar a cabo un proceso específico. El concepto del programa almacenado. Es la idea de que un programa p g no p puede ser ejecutado j ppor una computadora p a menos que se almacene en la memoria primaria de ella junto con los datos requeridos. SOFTWARE DE APLICACIONES SOFTWARE DE APLICACIONES Son los programas elaborados usando algún lenguaje de programación convencional que permiten el cumplimiento de las tareas específicas de los usuarios finales. Estos programas pueden ser : • Elaborados en la empresa • Desarrollados externamente sobre medida • Adquiridos como paquetes terminados. Ejemplos de software de aplicaciones: • Sistemas de Contabilidad • Sistemas de Nóminas • Sistemas de Reservaciones Aéreas • Sistemas de Punto de venta • Sistemas de administración de la producción • Sistemas de diseño auxiliado por computadora • Etc. SOFTWARE DE USUARIO FINAL SOFTWARE DE USUARIO FINAL Son las herramientas de software que permite el desarrollo de aplicaciones por los mismos usuarios finales con muy poca o nula intervención de programadores profesionales, o que incrementan la productividad de los programadores profesionales. Los principales ejemplos de este tipo de software son: • Lenguajes de cuarta generación: Variedad de herramientas de software que permiten a los usuarios finales desarrollar aplicaciones de software con una mínima experiencia o asistencia técnica o estimulan la productividad de los programadores profesionales • RAD (Rapid aplication development) • Lenguajes L j de d interrogación i t ió (SQL) • Generadores de reportes • Lenguajes de gráficas • Generadores de aplicaciones • Lenguajes de programación de muy alto nivel q de software especializado p adaptable p ( CONTROL DE MANUFACTURA ) • Paquetes • Procesadores de documentos • Hojas de cálculo • Administradores de bases de datos • Paquetes de software integrados • Sistemas de información geográfica Tipos de software • Software base o sistema operativo: Conjunto de todos l programas que controlan los l la l ejecución j i de d todas d las l aplicaciones y administran todos los recursos del computador. • Software de aplicación: Programa diseñado y escrito para realizar una tarea específica, ya sea personal, de negocios i o de d procesamiento. i t • Software de comunicaciones: Conjunto j de pprogramas g que permiten la comunicación entre dispositivos locales o remotos de una red. TIPOS DE SOFTWARE • Software de sistemas • • Sistemas operativos Lenguajes de programación • Bajo nivel: Lenguaje máquina, Ensamblador • Alto l nivel: i l • • • • Compilados: Lenguaje C, Pascal, Fortan Interpretados: Basica, Visual Basic. Utilerías Software de aplicación • • • Especializados De uso general Software del usuario final • • • • • • Sistemas de bases de datos Generadores de gráfica Lenguajes de 4ª. Generación Herramientas RAD Sistemas adaptables Si t Sistemas dde iinformación f ió geográfica áfi Q es ell Software Que S ft ? Programas de cómputo y su documentacion asociada • • • • • • Sistemas o Productos Si P d dde software f grandes d y complejos. l j Que contiene el software. Q Que tipos de software hay ? Cuall es ell costo del d l software. f Como Co o se des desarrolla o eel software so w e ? Como saber si un software tiene calidad. P d t de Productos d S Software ft • Productos genéricos. l Productos que son producidos por una organización para ser vendidos al mercado. • Productos hechos a medida. l Sistemas que son desarrollados bajo pedido a un de sarrollador específico. • La L mayor parte del d l gasto del d l software f es en productos d genéricos, pero hay más esfuerzo en el desarrollo de los sistemas hechos a medida. Características de los Productos de Software • Mantenibles. l Debe ser posible que el software evolucione y que siga cumpliendo con sus especificaciones. • Confiabilidad. C fi bilid d l El software no debe causar danos físicos o económicos en el caso de fallos. • Eficiencia. l El software no debe desperdiciar los recursos del sistema. • Utilización U ili ió adecuada. d d l El software debe contar con una interfaz de usuario adecuada y su documentación. Importancia p de las características del producto • La importancia relativa de las características depende en el tipo de producto y en el ambiente en el que será utilizado. • En algunos casos, algunos atributos pueden dominar. l En sistemas de seguridad críticos de tiempo real, los atributos clave pueden ser la confiabilidad y la eficiencia. eficiencia • Los costos tienden a crecer exponencialmente si son requeridos altos niveles de alguna característica. Que contiene el software ? • El software f contiene: i • Líneas de código g de algún g lenguaje g j ? • Instrucciones de computadora. • Descripción i ió de d las l estructuras de d datos. d • Algoritmos. g • Procedimientos y funciones. • Componentes de software. Q tipos Que ti de d software ft hay h ? • Por su estructura: • Funcionales. • Orientados a objetos. objetos • Orientados a listas. • Orientados a componentes componentes. • Por su función: • Programas o Sistemas de Usuario • Interfaces Hombre-Maquina. • Herramientas H i t de d Software. S ft • Librerias. • Sistemas i de d uso generico: i Compiladores, il d S.O’s, Procesadores d de Texto, etc • Bases B dde D Datos. t • Sistemas basados en Web. Q tipos Que ti de d software ft hay h ? • Por su plataforma de computo: • Sistemas embebidos. • Sistemas de computo distribuido. • Sistemas de computo paralelo. • Sistemas de tiempo real. • Sistemas basados en Chips. systems • Wearable computing systems. • Sistemas de computo ubiquos. Costos del Software • L Los costos del d l software f a menudo d dominan d i all costo del sistema. El costo del software en un PC es a menudo mas caro que la PC. Costos • Cuesta mas mantener el software que desarrollarlo. desarrollarlo Para sistemas con una larga vida, este costo se multiplica. multiplica • La Ingeniería de Software concierne a un desarrollo efectivo en cuanto a costes del software. Efi i Eficiencia i El Proceso P de d Software S ft • Conjunto estructurado de actividades requeridas para desarrollar un sistema de software. l Especificación- que debe hacer el software y cuales son sus especificaciones de desarrollo. l Desarrollo – produccion del sistema de software. l Validación – verificar que el software hace lo que el cliente pide. l Evolución – cambiar/adaptar el software a las demandas. demandas • Las actividades varían dependiendo de la organización y del tipo de sistema a desarrollarse. desarrollarse • Debe estar explícitamente modelado si va a ser bien administrado. administrado Proceso Genérico de Software • Especificación - establecer los requerimientos y restricciones del sistema • Diseño - Producir un modelo en papel del sistema • Manufactura M f - construir i ell sistema i • Prueba - verificar qque el sistema cumpla p con las especificaciones requeridas • Instalación - entregar el sistema al usuario y asegurar su operacionalidad • Mantenimiento - reparar fallos en el sistema cuando sea descubiertos Características del proceso • Entendible l Se encuentra el proceso bien definido y es entendible ?. • Visible l El p proceso es visible al exterior ?. • Soportable l P d ell proceso ser soportado Puede t d por herramientas h i t CASE ?. ? • Aceptable l El proceso es aceptado por aquellos involucrados en el ?. Muchas Gracias