Download softwaresig

Document related concepts

Programa informático wikipedia , lookup

MATLAB wikipedia , lookup

Programación wikipedia , lookup

Lenguaje de bajo nivel wikipedia , lookup

Lenguaje ensamblador wikipedia , lookup

Transcript
SOFTWARE DE
SISTEMAS DE
INFORMACIÓN
OBJETIVOS DE APRENDIZAJE
• Describir los principales tipos de software
• Examinar las funciones del software de sistemas y
comparar los principales sistemas operativos de
PC
• Explicar cómo ha evolucionado el software y cómo
se seguirá desarrollando
• Analizar las ventajas y limitaciones de los
principales lenguajes de programación e
aplicaciones y herramientas de software
• Describir los nuevos enfoques de desarrollo de
software
• Identificar los problemas importantes en la
administración de los activos de software de una
organización
SOFTWARE
•
•
•
•
Las instrucciones detalladas que controlan el
funcionamiento de un sistema de computación
Programa: Conjunto de enunciados o
instrucciones para la computadora
Programa almacenado: Programa guardado en el
almacenamiento primario de una computadora
Software de sistemas: Programas generalizados
que administran los recursos de la computadora
Software de aplicación: programas escritos para
una aplicación específica
SOFTWARE
Software de aplicación
Software de sistemas
Hardware
Sistema operativo:
•Programa sucesos en la
computadora
•Reparte recursos
•Monitorea sucesos
Traductores de lenguajes:
•Intérpretes
•Compiladores
Programas utilitarios:
•Operaciones rutinarias
Software de aplicación:
•Manejar datos
Lenguajes de programación;
lenguaje ensamblador; FORTRAN;
COBOL; PL / 1; QBASIC; PASCAL; C; C++;
lenguajes de cuarta generación
SISTEMAS OPERATIVOS
•
•
•
•
Administra y controla las actividades de la
computadora
Reparto y asignación
Programación
Monitoreo
Dispositivos de residencia del sistema:
Dispositivo de almacenamiento
secundario
Almacenamiento del sistema operativo
MULTIPROGRAMACIÓN
Sistema tradicional sin
multiprogramación
Entorno de
multiprogramación
Programa 1
Memoria desocupada
Sistema operativo
Sistema operativo
Programa 1
Programa 2
Programa 3
Memoria desocupada
MULTITAREAS
Multiprogramación en
un sistema de un solo
usuario como una
microcomputadora
ALMACENAMIENTO VIRTUAL
Forma de manejar varios programas
en la memoria primaria:
• El programa se divide en
– Porciones de tamaño fijo (páginas) o
– De longitud variable (segmentos)
• Las porciones actuales residen en la
memoria primaria
• Las porciones se limpian cuando las
páginas son ejecutadas
TIEMPO COMPARTIDO
•
•
•
•
Varios usuarios comparten los recursos
de una computadora:
El tiempo de la CPU se divide en “tajadas”
(p. ej.: 2 milisegundos)
Cada usuario tiene acceso a la CPU
durante el lapso que dure su tajada
Puesto que la CPU es rápida, puede
realizar mucho trabajo en ese lapso
El trabajo del usuario es limpiado al
terminar su tajada
MULTIPROCESAMIENTO
• Dos o más procesadores trabajan en
paralelo en un mismo sistema
• El programa puede dividirse para
ser procesado por varias CPU
• Puede procesar programas grandes
más rápidamente
TRADUCCIÓN DE LENGUAJES
• Código fuente: Instrucciones de
programa escritas en un lenguaje de
alto nivel
• Compilador: Traduce un lenguaje de
alto nivel a lenguaje de máquina
• Código objeto: Instrucciones que
han sido traducidas a lenguaje de
máquina
Compilador
Código objeto
Editor de
enlace
Módulo
de carga
Otros módulos
de código objeto
PROCESO DE TRADUCCIÓN
Programa en
código fuente
INTERFAZ GRÁFICA
CON EL USUARIO (GUI)
El sistema operativo utiliza:
• Iconos gráficos (iconos, botones,
barras, cuadros)
• Ratón
• Para emitir comandos y
• Seleccionar opciones
SISTEMAS OPERATIVOS DE PC
Sistema operativo
Características
Windows
Sistema operativo de 32 bits; GUI; multitareas;
trabajo con redes
Windows NT
y 2000
Sistema operativo de 32 bits no limitado a
microprocesadores Intel; multitareas;
multiprocesamiento; trabajo intensivo con redes
Windows CE
Versión reducida de Windows para
computadoras de mano y dispositivos de
comunicación inalámbrica
OS/2
Sistema de 32 bits desarrollado para PS/2 de IBM;
multitareas; trabajo con redes
SISTEMAS OPERATIVOS DE PC
Sistema operativo
UNIX
Características
Para PC potentes, estaciones de trabajo y
minicomputadoras; multitareas;
peocesamiento multiusuario; trabajo con
redes; se puede trasladar a diferentes
modelos de computadoras
Mac OS
Para computadoras Macintosh; multitareas;
potentes funciones multimedios; trabajo con redes
DOS
Para PC IBM (PC-DOS) y compatibles (MSDOS); limita el uso de la memoria de los
programas a 640K
GENERACIONES DE LENGUAJES
DE PROGRAMACIÓN
Primera: Desde los años cuarenta; lenguaje
de máquina; código binario
Segunda: Principios de la década de los
cincuenta; lenguaje ensamblador;
mnemónicos para el código numérico
Tercera: Mediados de los años cincuenta;
lenguajes de alto nivel
Cuarta: Fines de los años setenta;
aplicaciones modernas
LENGUAJES DE ALTO NIVEL
• FORTRAN (FORmula TRANslator).
Aplicaciones científicas y matemáticas
• COBOL (COmmon Business Oriented
Language). Aplicaciones de negocios;
procesa grandes archivos de datos con
caracteres alfanuméricos
• BASIC (Beginners All-purpose Symbolic
Instruction Code). Lenguaje de
programación de propósito general para
PC
LENGUAJES DE ALTO NIVEL
• Pascal Se usa para enseñar prácticas de
programación; débil en las áreas de manejo de
archivos y de entrada/salida
• C y C++ Potente lenguaje de programación para
desarrollo de aplicaciones; estricto control y
eficiencia de ejecución; se puede trasladar a
diferentes plataformas
• PL/1 (Programming Language 1) Lenguaje de
programación desarrollado por IBM para
aplicaciones científicas y de negocios
• Ada Se usa para aplicaciones militares y no
militares; puede operar en diferentes
plataformas de hardware
LENGUAJES DE INTELIGENCIA
ARTIFICIAL
• LISP (LISt Processor) Empleado en
aplicaciones de inteligencia artificial;
orientado hacia la conversión de símbolos
en listas significativas
• Prolog Apropiado para manipular
símbolos; puede ejecutarse en una
variedad amplia de plataformas
Conversión de símbolos (operaciones;
variables; valores de datos)
LENGUAJES DE CUARTA
GENERACIÓN
• Pueden ser usados por los usuarios
finales
• Suelen utilizar menos procedimientos que
los lenguajes de programación
convencionales
• Permiten crear aplicaciones rápidamente
• Son lenguajes naturales
• Hay seis categorías
LENGUAJES DE CUARTA
GENERACIÓN
1. Lenguajes de consulta:
• Recupera información rápidamente
• Suelen ser interactivos o en línea
• Pueden usar lenguaje natural
• Soportan solicitudes especiales de
sistemas de administración de bases
de datos
LENGUAJES DE CUARTA
GENERACIÓN
2. Generadores de informes:
• Crean informes personalizados
• Trabajan con una amplia gama de
formatos
3. Lenguajes gráficos:
• Pueden manipular, dibujos, gráficos, fotos
y vídeos
• Administradores de presentaciones
LENGUAJES DE CUARTA
GENERACIÓN
4. Generadores de aplicaciones:
• El usuario especifica lo que necesita
hacer
• El generador de aplicaciones crea el
código de programa apropiado
• Reduce el tiempo de desarrollo
LENGUAJES DE CUARTA
GENERACIÓN
5. Lenguajes de programación de alto nivel:
• Herramienta de productividad de
programadores profesionales
• Usa menos instrucciones que los
lenguajes convencionales
• Reduce el tiempo de desarrollo
LENGUAJES DE CUARTA
GENERACIÓN
7. Paquetes de software de aplicación:
conjunto de programas preescritos,
disponibles comercialmente...
• Procesamiento de textos
• Hojas de cálculo
• Administración de datos
• Gráficos de presentación
Los paquetes de software integrado
combinan estas herramientas para
simplificar su uso y aprendizaje
HERRAMIENTAS DE SOFTWARE
•
•
•
•
•
•
•
•
Procesamiento de textos
Hojas de cálculo
Administración de datos
Gráficos de presentación
Paquetes de software integrados
Correo electrónico
Navegadores de Web
Groupware
CAPACIDADES DEL
GROUPWARE
•
•
•
•
•
•
Escribir y comentar en grupo
Distribuir correo electrónico
Programar reuniones y citas
Compartir archivos y bases de datos
Compartir líneas de tiempo y planes
Celebrar reuniones y conferencias
electrónicas
PROGRAMACIÓN ORIENTADA
A OBJETOS
• Combina datos y procedimientos en un
solo objeto
• El programa envía un mensaje al objeto
para realizar un procedimiento incrustado
• Los datos del objeto son encapsulados
del resto del sistema
• Crea código reutilizable
• Reduce tiempo y costo de desarrollo de
software
PROGRAMACIÓN ORIENTADA
A OBJETOS
Programación visual: selecciona y acomoda objetos
de programación, en vez de escribir un código de
programa
Clase: todos los objetos que pertenecen a cierta
clase tienen todos los rasgos de la misma
Herencia: una clase específica de objetos recibe los
rasgos de una clase más general
Supeditar: una subclase puede supeditar un
método heredado (p. ej.: Aunque Pagar es un
método heredado de alguna superclase, el
método Pagar SUPEDITADO es específico para
las clases Temporal, Permanente y Asalariado)
PROGRAMACIÓN ORIENTADA
A OBJETOS
Java: Lenguaje de programación orientada a
•
•
•
•
•
objetos de Sun Microsystems
Applet: programa miniatura que ejecuta una
función específica
Las applets son bajadas de la red
Se ejecutan en cualquier computadora o sistema
operativo
El resultado es guardado en la red, no en la
computadora
Únicamente la versión de red necesita
actualización
PROGRAMACIÓN ORIENTADA
A OBJETOS
ActiveX: Controles para el entorno
Windows que permiten incrustar objetos
en una página Web:
• Gráficos
• Tablas
• Animaciones