objetivo: tema 3: software operativo y de desarrollo1 tema 3: software operativo y de desarrollo mi...

5
24/08/2010 1 Tema 3: Software operativo y de desarrollo MI Elizabeth Fonseca Chávez FI UNAM Objetivo: Evolución del software y su situación actual Definiciones. (real academia española) Hardware: (hard=duro)Conjunto de los componentes que integran la parte material de una computadora. Software: (soft=blando)Conjunto de programas, instrucciones y reglas informáticas para ejecutar ciertas tareas en una computadora. HISTORIA DE LAS COMPUTADORAS VARAS,MUESCAS ABACO TABLAS DE MULTIPLICAR REGLA DE CALCULO Maquina de Pascal Maquina de Leibnitz Telares de Jacquard Maquina de diferencias y analítica de Babage Calculadoras perfeccionadas Calculadoras electromecánicas, MARK l, mark ll y mark lll (1944) Primera computadora UNIVAC, ENIAC Generación de las computadoras: 1ª. Bulbos, espacios grandes 2. Transistores. Menos espacio 3. Circuitos Integrados 4. Microprocesador 5. (Inteligencia Artificial) 5ª. nanotecnología La pascalina de Blaise Pascal calculate with 8 figures and carrying of 10's , 100's, and 1000's etc. 1642 Leibintzrealiza maquina con las cuatro operaciones básicas 1671 Telares de Jacquard. Controlado por tarjetas perforadas Charles Babage crea maquina de diferencial(vista en foto) y analítica.

Upload: others

Post on 12-Jan-2020

4 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Objetivo: Tema 3: Software operativo y de desarrollo1 Tema 3: Software operativo y de desarrollo MI Elizabeth Fonseca Chávez FI UNAM ... 1,2,3 y 4** ADA nombre de un lenguaje Prog

24/08/2010

1

Tema 3: Software operativo y de

desarrollo

MI Elizabeth Fonseca Chávez

FI UNAM

Objetivo:

Evolución del software y su situación

actual

• Definiciones. (real academia española)

Hardware: (hard=duro)Conjunto de los

componentes que integran la parte material

de una computadora.

Software: (soft=blando)Conjunto de programas,

instrucciones y reglas informáticas para

ejecutar ciertas tareas en una computadora.

HISTORIA DE LAS COMPUTADORASVARAS,MUESCAS

ABACO

TABLAS DE MULTIPLICAR

REGLA DE CALCULO

Maquina de Pascal

Maquina de Leibnitz

Telares de Jacquard

Maquina de diferencias y analítica de

Babage

Calculadoras perfeccionadas

Calculadoras electromecánicas,

MARK l, mark ll y mark lll (1944)

Primera computadora UNIVAC,

ENIAC

Generación de las

computadoras:

1ª. Bulbos, espacios grandes

2. Transistores. Menos espacio

3. Circuitos Integrados

4. Microprocesador

5. (Inteligencia Artificial)

5ª. nanotecnología

La pascalina de Blaise Pascal calculate with 8 figures and carrying of 10's ,

100's, and 1000's etc. 1642

Leibintz realiza maquina con las cuatro operaciones básicas 1671

Telares de Jacquard.

Controlado por

tarjetas perforadas

Charles Babage

crea maquina de

diferencial(vista

en foto)

y analítica.

Page 2: Objetivo: Tema 3: Software operativo y de desarrollo1 Tema 3: Software operativo y de desarrollo MI Elizabeth Fonseca Chávez FI UNAM ... 1,2,3 y 4** ADA nombre de un lenguaje Prog

24/08/2010

2

Electronic Numerical Integrator And

Computer ENIAC. 27 toneladas, 167

m^2, y 160 Kw. 1946

UNIVAC 1951 - La primera

computadora comercial

Primer Programa de ADA

• 1841 Charles Babbage anuncia en conferencia La máquina analítica.

• lady Lovelace, matemática leyó articulo e hizo un plan de cómo su maquina calculara los números de Bernoulli(*): Primer programa, primer software, software que no se llegó a usar, dado que la máquina nunca se completó.

• August Ada Byron, Lady Lovelace,

• http://www.thocp.net/biographies/lovelace_ada.html

*para la suma de las k-ésimas potencias de los primeros n enteros positivos, cuando k = 1,2,3 y 4** ADA nombre de un lenguaje Prog

1949 - El matemático húngaro John Von Neumann resolvió el problemade tener que cablear la máquina para cada tarea.La solución fue poner las instrucciones en la misma memoria que losdatos, escribiéndolas de la misma forma, en código binario.

Refiriéndose a esta innovación, se habla de la "arquitectura de

VonNeumann". Su EDVAC fue el modelo de las computadoras de este tipo.

1957 - Un equipo de IBM, dirigido por John Backus, creó el primer lenguaje de

programación, llamado Fortran , formulado para el IBM 704.

1969 - Kenneth Thompson y Dennis Ritchie, de Bell Labs, desarrollaron el

sistema operativo Unix . (y lenguaje C 1972)

1981 IBM lanzó al mercado el IBM PC ; su sistema

operativo, el DOS 1.0, era de Microsoft, y el

microprocesador, un Intel 8088

MSDOS= MicroSoft Disk Operating System.

1975 Bill Gates y Paul Allen se unen

para crear Microsoft

1975 - Steve Jobs desarrolló el lenguaje de programación Basic

1975 - Steve Jobs y Steven Wozniak, crearon la primera computadora Apple

Clasificación Software

El software se clasifica :

• sistemas operativos,

• lenguajes de programación

• y programas de aplicación.

• Tenemos software de base: 1)sistemas operativos, 2)lenguajes y traductores y

3)Software aplicativo:

3ª) a la medida y

3b)de propósito general

Page 3: Objetivo: Tema 3: Software operativo y de desarrollo1 Tema 3: Software operativo y de desarrollo MI Elizabeth Fonseca Chávez FI UNAM ... 1,2,3 y 4** ADA nombre de un lenguaje Prog

24/08/2010

3

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.

DMA

Direct

memory

access

Sistemas Operativos

Lenguajes de programación

• Los lenguajes de programación pueden clasificarse según el paradigma que usan en:

• Imperativas: procedimentales1, Orientado a objetos2,

• Declarativas: funcionales3(func. aritméticas), lógicos4, híbridos, etc.

Son ejemplos de lenguajes de programación: 1php, 2ASP, ActionScript, 2ada, python, 1pascal, 1c, 1basic,1y 2JAVA, JavaScript, 3lips, 2c++, 4prolog

• Un paradigma de programación es una colección de modelos conceptuales que juntos modelan el proceso de diseño y determinan, al final, la estructura de un programa.

Tipos de paradigmas por FLOYDFloyd describió tres categorías de paradigmas de programación:

a) Los que soportan técnicas de programación de bajo nivel (ej.: copia de ficheros frente estructuras de datos compartidos)

b) Los que soportan métodos de diseño de algoritmos (ej.: divide y vencerás, programación dinámica, etc.)

c) Los que soportan soluciones de programación de alto nivel, como los descritos en el punto anterior

Floyd también señala lo diferentes que resultan los lenguajes de programación que soportan cada una de estas categorías de paradigmas. Sólo comentaremos los paradigmas relacionados con la programación de alto nivel.

Se agrupan en tres categorías de acuerdo con la solución que aportan para resolver el problema

a) Solución procedimental u operacional. Describe etapa a etapa el modo de construir la solución. Es decir señala la forma de obtener la solución.

b) Solución demostrativa. Es una variante de la procedimental. Especifica la solución describiendo ejemplos y permitiendo que el sistema generalice la solución de estos ejemplos para otros casos. Aunque es fundamentalmente procedimental, el hecho de producir resultados muy diferentes a ésta, hace que sea tratada como una categoría separada.

c) Solución declarativa. Señala las características que debe tener la solución, sin describir cómo procesarla. Es decir señala qué se desea obtener pero no cómo obtenerlo.

Lenguajes por nivel

Page 4: Objetivo: Tema 3: Software operativo y de desarrollo1 Tema 3: Software operativo y de desarrollo MI Elizabeth Fonseca Chávez FI UNAM ... 1,2,3 y 4** ADA nombre de un lenguaje Prog

24/08/2010

4

El lenguaje Ensamblador es un tipo de lenguaje de bajo nivel utilizado

para escribir programas informáticos y constituye la representación

más directa del código de maquina específico para cada arquitectura

de computadoras legible por un programador.

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 ProcessImprovement 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

Page 5: Objetivo: Tema 3: Software operativo y de desarrollo1 Tema 3: Software operativo y de desarrollo MI Elizabeth Fonseca Chávez FI UNAM ... 1,2,3 y 4** ADA nombre de un lenguaje Prog

24/08/2010

5

Software aplicativo: a la medida y de

propósito general

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?