Download softwaresig
Document related concepts
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