Tema 3: Software operativo y de desarrollo MI Elizabeth Fonseca Chávez FI UNAM 2010-2.

Slides:



Advertisements
Presentaciones similares
SISTEMAS OPERATIVOS.
Advertisements

¿Qué es Sofware? Son el conjunto de instrucciones que dirigen las actividades del Hardware Consiste en programas, módulos de soporte y archivos de datos,
Conceptos preliminares
Un compilador es un programa informático que traduce un programa escrito en un lenguaje de programación a otro lenguaje de programación, generando un programa.
Ing. Enrique Meneses. Son las instrucciones detalladas que controlan el funcionamiento de un sistema de computación. Funciones: 1. Administrar los recursos.
MÉTODOS Y ELEMENTOS DE PROGRAMACIÓN
Lenguajes de programación
Computación PROGRAMACIÓN.
INSTITUTO TECNOLOGICO DE MINATITLAN
Lenguajes de programación
Introducción al software
UNIVERSIDAD NACIONAL AUTÓNOMA DE MÉXICO
Programación 1 Introducción
Introducción a la programación
Software La buena programación no se aprende de generalidades, sino viendo cómo los programas significativos pueden hacerse claros, “fáciles” de leer,
Introducción a la Computación (IC)
Clasificación de SO por usuarios
Lenguajes de programación
CLASIFICACIÓN DE COMPUTADORAS
Conceptos Fundamentales
ALGORITMOS Y ESTRUCTURAS DE DATOS
Introducción. Agenda Clase 1 ● Preámbulo histórico. ● Razones de la Diversidad de Lenguajes. ● Razones del Éxito de un Lenguaje. ● Clasificación ● Motivación.
Sistemas Evolutivos Introduccion.
ALGORITMOS, LENGUAJES Y TECNICAS DE PROGRAMACION
TRADUCTOR DE UN PROGRAMA
 Fue en el año 1945 cuando el matemático Jhon Von Neumann, fascinado por las posibilidades del ENIAC, demostró que una computadora podía tener una estructura.
SOFTWARE DE PROGRAMACIÓN
Programación I MC José Andrés Vázquez Flores
SISTEMAS OPERATIVOS EQUIPO 9: GRUPO: Luna Rodríguez Diana Alejandra
Los Sistemas Operativos
Introducción a los Sistemas Operativos
SISTEMAS OPERATIVOS.
Introducción a la tecnología Realizado por: Miguel Ángel Arias.
Prof. Gabriel Matonte Programación I Prof. Gabriel Matonte
 Un LENGUAJE DE PROGRAMACION es un idioma artificial diseñado para expresar computaciones que pueden ser llevadas al cabo por maquinas como las computadoras.
COMPUTO III Ing. Jimmy Ojeda Arnica.
Conceptos Básicos de Informática
LENGUAJES DE PROGRAMACION
Lenguajes de programación
CLASIFICACION DE LAS COMPUTADORAS
TALLER DE INFORMATICA 1  UNIDAD 1 EXCEL 1.1 INTRODUCCION.
1 Ana Mercedes Cáceres Instructor: Raúl Aguilar Año 2006 [Parte I ]
PROGRAMACION presentado por: Jhon Viasus Fabian Valencia.
PROGRAMAS INFORMATICOS
Sistemas Operativos.
Tema 3: Software operativo y de desarrollo MI Elizabeth Fonseca Chávez FI UNAM.
Metodología de la programación
Prof. Flor Narciso Departamento de Computación
Aplicación de los Sistemas Operativos CAPITULO I Lic. Cristian Mera Macías.
SISTEMAS OPERATIVOS Por Martín Arosemena.
Salir de la presentación
SISTEMAS OPERATIVOS.
Lenguaje programación
LIA. SUEI CHONG SOL, MCE..  1.- SOFTWARE BÁSICO O DE SISTEMA. Conjunto de programas imprescindibles para el funcionamiento del sistema.  2.- SOTWARE.
DISEÑO CURRICULAR Presentado por: Cesar Augusto Sáenz María Alejandra Hernández 1.contenidos curriculares de competencia.
Software.
Unidad TemáticaI. Conceptos Básicos Horas Prácticas10 Horas Teóricas8 Horas Totales18 Objetivo El alumno determinará las entradas, procesos y salidas.
Curso: Programación I Grado: 4to. Bachillerato Prof. Gerardo Barrientos.
UNIDAD I INTRODUCCION A LOS S.O.
TECNICO EN SISTEMAS NUMERO DE FICHA:
 Panorama General Fundamentos de Programación M.I. Jaime Alfonso Reyes Cortés.
Definición De Software Y Hardware
Evelin Ramos Cabrera 1° B
UTILIZACION DE LA COMPUTADORA,ENTORNO Y APLICACIONES (SOFTWARE)
Sistema operativo.
Fundamentos de Programación Unidad I Conceptos Básicos.
Conalep 150 Tehuacán inmi 309 soma
Instituto de Ciencias y Humanidades Tabasco. El software Coordinar el uso del hardware Coordinar el uso del hardware Ejercer el control Programas de aplicación.
SOFTWARE DE COMPUTADORAS
Juan Camilo Morales 10a.  Es el conjunto de herramientas que permiten al programador escribir programas informáticos, usando diferentes alternativas.
Transcripción de la presentación:

Tema 3: Software operativo y de desarrollo MI Elizabeth Fonseca Chávez FI UNAM

Objetivo: El alumno conocerá y entenderá la evolución del software y la situación actual que éste presenta. Asimismo distinguirá los diferentes tipos de programas (software) necesarios tanto para operar la máquina como para realizar desarrollos y aunado a esto tendrá las bases para seleccionar aquel software que le permita resolver un problema.

Evolución del software y su situación actual el software se clasifica generalmente en tres grandes rubros: sistemas operativos, lenguajes de programación y programas de aplicación. Tenemos software de base: sistemas operativos, lenguajes y traductores y Software aplicativo: a la medida y de propósito general La máquina analítica de Charles Babbage, incidentalmente, tuvo su software, y fue una amiga de éste, la legendaria lady Lovelace, quien aportó el software que no se llegó a usar, dado que la máquina nunca se completó. En el ENIAC el control de las operaciones estaba parcialmente integrado en el equipo. Dicho control era realizado por un circuito que requería un alambrado específico para cada aplicación. Imaginemos lo engorroso que resultaba realambrar el circuito cada vez que cambiaba el uso del ENIAC.

ENIAC. para agilizar la labor del censo del año 1890 en plena revolución industrial

Historia del software Hasta este momento, no se percibía una diferencia sustancial entre el equipo y el control de las operaciones. El concepto de programa de control almacenado en memoria, aportación popularmente atribuida a John von Neumann, precipitó el desarrollo de software. En éste se perfilaron dos tendencias de desarrollo: los programas de aplicación y los de servicio. Estos últimos tenían como propósito facilitar el desarrollo de programas a partir de programas. Algunos programas de servicio fueron simples cargadores que permitieron emplear notaciones como el octal o hexadecimal más compactas que el binario. Otros como los ensambladores simplificaron más el proceso al reemplazar las notaciones numéricas con los símbolos mnemónicos que aportaron para describir a cada instrucción de la máquina. El siguiente paso significativo fue la traducción de fórmulas, que permitió el desarrollo de la historia del software y la descripción de los algoritmos con el empleo de expresiones algebraicas.

Lenguaje Ensamblador

Historia del software Dicha traducción se realiza con programas que se denominan compiladores, generan programas que al ejecutarse producen los resultados. Es importante destacar que en tanto los programas de aplicación saturaron los recursos de los equipos, imponiendo sus requerimientos en cuanto a velocidad, precisión en la aritmética y capacidad en los almacenamientos; los programas de servicio repercutieron en la evolución de la arquitectura de los equipos (hardware). Entre las aportaciones más notables, podemos citar el empleo de pilas y el reemplazo de referencias físicas por lógicas. Con la pila (Push Down List), se da lugar al manejo recursivo de los procesos. Por ejemplo, esto ocurre en una oficina administrativa, cuando se pospone la solución de un problema para resolver otro de mayor exigencia.

Historia del software El problema original se suspende y se aborda nuevamente cuando el de mayor exigencia ya ha sido resuelto. Con el reemplazo de referencias físicas por lógicas, se obtuvo un incremento más real que virtual de los recursos disponibles. Almacenamientos secundarios, registros operacionales, memoria virtual, memoria cache e hizo translapes (overlay), son algunas de las técnicas que emplean este concepto. El efecto es similar al de las operaciones bancarias nominales con que las instituciones de crédito prestan varias veces su capital. Los elementos aportados por los programas de servicio, al interrelacionarse configuran el sistema operativo con el cual se administran los recursos disponibles en las computadoras y se establecen líneas de producción para el proceso de programas con una mínima participación del operario: la automatización de la automatización. En los principios de la historia del software, los sistemas operativos brotan como extensiones de los lenguajes. Posteriormente, el fenómeno se invierte de modo que los sistemas operativos configuren el ambiente en el que se desempeñan las aplicaciones y los programas de servicio.

Definiciones Sistema Operativo: El conjunto de programas informáticos que permite la administración eficaz de los recursos de una computadora. Permite controlar las asignaciones de memoria, ordenar las solicitudes al sistema, controlar los dispositivos de entrada y salida, facilitar la conexión a redes y el manejo de archivos. memoriadispositivosconexiónredes archivos

Sistemas operativos Windows, Unix, Linux, DOS, Mac OS, etc. Características básicas En computadoras, el sistema operativo comienza a funcionar cuando finaliza el trabajo del BIOS al encenderse o reiniciar la computadora. Los sistemas operativos poseen una interfaz que puede ser gráfica (GUI) o de texto (línea de comandos). Los sistemas operativos forman una plataforma para que otros sistemas o aplicaciones la utilicen. Aquellas aplicaciones que permiten ser ejecutadas en múltiples sistemas operativos son llamadas multiplataforma. La mayoría de los sistemas operativos actuales son también multiusuario, aunque existen los monousuario (por ejemplo, DOS) También pueden clasificarse en multitarea o monotarea. Cada programa que se ejecuta en un sistema operativo, ya sea aplicación o servicio de fondo, es llamado proceso. (Windows emula la multitarea) Los sistemas operativos pueden ser centralizados, si permiten utilizar recursos de una sola computadora, o distribuido si permiten utilizar recursos de más de una computadora al mismo tiempo. WindowsUnixLinuxDOSMac OSBIOSreiniciarinterfazGUIlínea de comandosplataformaaplicaciones multiplataformamultiusuariomultitareaproceso

Lenguajes Lenguaje artificial que puede ser usado para controlar el comportamiento de una máquina, especialmente una computadora. Estos se componen de un conjunto de reglas sintácticas y semánticas que permiten expresar instrucciones que luego serán interpretadas. Debe distinguirse de “lenguaje informático”, que es una definición más amplia, puesto estos incluyen otros lenguajes como son el HTML o PDF que dan formato a un texto y no es programación en sí misma.computadoraHTMLPDF El programador es el encargado de utilizar un lenguaje de programación para crear un conjunto de instrucciones que, al final, constituirá un programa o subprograma informático. Los lenguajes de programación pueden clasificarse según el paradigma que usan en: procedimentales, orientados a objetos, funcionales, lógicos, híbridos, etc. Son ejemplos de lenguajes de programación: php, prolog, ASP, ActionScript, ada, python, pascal, c, basic, JAVA, JavaScript, etc.programadorprogramaparadigmaorientados a objetosphpprologASPActionScriptadapascalbasicJAVAJavaScript

Traductores es un software que toma como entrada un programa escrito en un código llamado fuente y genera como salida otro programa en un código llamado objeto. Algunos ejemplos de traductores son los compiladores (toma como entrada código en alto nivel y genera como salida código en bajo nivel), los interpretes (toma como entrada código en alto nivel y genera como salida un código intermedio), los preprocesadores (toma como entrada código en alto nivel y genera como salida código en alto nivel) y el ensamblador (toma como entrada código en ensamblador y genera como salida código en bajo nivel). Su estructura podria ser expresada de la siguiente manera: código fuente -→>> traductor -→> código objeto. Un intérprete es un programa que ejecuta un programa escrito en un determinado lenguaje examinando y ejecutando cada sentencia del programa una a una, por separado y sin realizar un proceso de compilación previo.

Situación Actual El desempeño de los proyectos de sistemas actualmente es: 26% de ellos son exitosos, un 46% son proyectos cuestionables y un 28% son proyectos fallidos, arrojando una cifra de 97 Miles de Millones de USD de desperdicio, (Standish Group International). Casi el 25% de los proyectos de software son cancelados por atraso o por salirse del presupuesto, o por tener una baja calidad, o por experimentar alguna combinación de ellos. Se han definido varios modelos basados en las experiencias exitosas de la Ingeniería de Software que sirven de guía para las mejoras y unifican los criterios de evaluación de las empresas. Las normas ISO de serie 9000, el modelo estadounidense conocido como CMM (Capability Maturity Model), el BOOTSTRAP (Estándar Europeo para Evaluación y Mejoras de Procesos de Desarrollo de Software) y la norma ISO 15504, conocida como SPICE, (Software Process Improvement and Capability determination) son los ejemplos más reconocidos de estos modelos.

Antes en México

En México La falta de especialización o enfoque de los competidores, en lo que respecta a servicios y a mercados. La ausencia de estrategia referente al esquema con que venden los servicios (por proyectos o como mano de obra) y al lugar en que éstos se realizan (en las instalaciones de los clientes o fuera de ellas). La diversidad de precios de cada tipo de servicio. El manejo de los recursos humanos sin un enfoque estratégico. La falta de empleo de buenas metodologías. La ausencia generalizada de mecanismos para medir y evaluar el desempeño de las empresas. (ITAM 2008).

Software aplicativo: a la medida y de propósito general

Cuestionario de Examen3 1. ¿Donde, cuando y con quien se dice que comenzó la historia del software? 2.¿Que es un sistema operativo, un lenguaje y un traductor? 3. Diferencia entre software a la medida y de propósito general. 4. ¿Enumera los lenguajes desde que existieron? 4.¿ Cual es el beneficio del País con saber trabajar el software?