Fundamentos de software
Informática Aplicada
Grado en GAP
Fac. de Admón. y Dir. de Empresas
Univ. Politécnica de Valencia
210601. Informática Aplicada
Objetivos
• Describir las 3 categorías principales de software y su relación
• Explicar la correspondencia entre algoritmos y programas
• Discutir los factores que hacen que una aplicación sea útil
• Describir el papel del sistema operativo en un ordenador actual
• Seguir la evolución de los interfaces entre las personas y los ordenadores
310601. Informática Aplicada
¿Cómo trabaja el software?
• Un programa es una secuencia de instrucciones elementales sencillas– Los programadores comienzan diseñando un
algoritmo: una “receta” en lenguaje natural
– Problema: el lenguaje natural es ambiguo
• Los algoritmos deben convertirse en instrucciones inteligibles para la CPU– Código fuente: lenguaje de programación
– Código binario: secuencias de 0s y 1s
410601. Informática Aplicada
¿Cómo trabaja el software?
¿Qué ocurre cuando alguien quiere escribir un programa?
510601. Informática Aplicada
¿Cómo trabaja el software?
Piensa
Algoritmo
Problema: el lenguaje natural
es ambiguo
610601. Informática Aplicada
¿Cómo trabaja el software?
Piensa
Algoritmo
… pero un ordenador no lo entiende
Escribe
Programa(cód. fuente)
710601. Informática Aplicada
¿Cómo trabaja el software?
Piensa
AlgoritmoEscribe
Programa(cód. fuente)
Genera
Ejecutable(cód. binario)
810601. Informática Aplicada
¿Cómo trabaja el software?
Pide un número al usuarioMultiplícalo por 2Muestra en pantalla el resultado
algoritmo
910601. Informática Aplicada
¿Cómo trabaja el software?
#include <stdio.h>
int main(){ int num, doble; printf( "Introduce un número: " ); scanf( "%d", &num ); doble = num * 2; printf( "Su doble es: %d\n", doble );}
código fuente
1010601. Informática Aplicada
010110011101110000001000001111010001111011111000101111100010001001001111001001101011100001111001001101011000110111001001100111100010110011100010001011011011011010111010010100011111000011001000111000100011101111000101010010100100110011111110011100111000111110111110110100011100001110000100101111010011110110010011100001101110010110100110110001110001011111001100010001111111010001001010001001111101010011001000100010000100111110001100101101011110000001101111110111011101100011010100011010010111000100010000011101111011011011110000100010001011010110110101101100001111001001011110001101010110100000010001101111010101111100010001000001110011110110000100001101111110101111100000101011101111011111101001101001100101011011000111010100100100001000011011110000100111110111111111000100011000110000011011000011010111000100
código binario
¿Cómo trabaja el software?
1110601. Informática Aplicada
Tipos de programas
• Software de desarrollo (compiladores y otros)
– Permiten a los programadores escribir nuevos programas
• Programas de aplicación– Herramientas de productividad que permiten a
los usuarios resolver sus problemas
• Software del sistema– Coordina las operaciones del hardware
– Más cercano al hardware
1210601. Informática Aplicada
Programas de aplicación
• ¿por qué utilizamos programas?– Son metáforas visuales de herramientas del
mundo real
– Expanden las capacidades humanas
1310601. Informática Aplicada
Programas de aplicación
• Tipos de programas– Software vertical o a medida
– Suites
– Paquetes integrados
1410601. Informática Aplicada
Software vertical o a medida
• Aplicaciones específicas de un sector: – Ej.: software de facturación, sw de catalogación
para bibliotecas, administración de restaurantes…
– Elevado coste por tener un mercado más reducido
– Algunas veces incluso se desarrollan para un único cliente
1510601. Informática Aplicada
Suites
• Aplicaciones de uso común– Ej.: proc. de textos, hoja de cálculo, bases de datos.
– Uso extendido en ámbitos muy diversos: hogar, oficinas, administración, educación,…
• Estas aplicaciones se reúnen en un único paquete denominado “suite”– Más económico que adquirir los programas por separado
– Ej.: MS Office y OpenOffice (ofimática), Adobe Creative Suite (diseño gráfico)
1610601. Informática Aplicada
Paquetes integrados
• Incorporan varias aplicaciones en un mismo programa– Comparten el mismo entorno facilita el
aprendizaje
– Más limitado que las aplicaciones equivalentes aisladas
– Menor coste que las suites
– Ej.: MS Works o AppleWorks
1710601. Informática Aplicada
Software del sistema
• Gestiona la comunicación entre el hardware y el software
• Permite abstraerse de los detalles del hardware (máquina virtual)
• Incluye los siguientes tipos de programas– Controladores de dispositivos o “drivers”
– Sistema operativo
– Programas de utilidad
1810601. Informática Aplicada
Controladores de dispositivos (drivers)
• Gestionan la comunicación entre el ordenador y los dispositivos de E/S
• Facilitan la ampliación de los ordenadores (arquitectura abierta)
• Actúan como intermediarios cuando el usuario requiere el acceso al dispositivo (lector CD, impresora, ratón, módem...)
• Cómo conseguirlos– Algunos están incluidos en el propio S.O.– Otros se proporcionan con el dispositivo (en un CD de
instalación)– A veces son propiedad de otras empresas y es necesario
adquirirlos para poder usarlos.
1910601. Informática Aplicada
Sistema operativo
• Intermediario entre el usuario y los programas de aplicación y el hardware– Proporciona una capa de aislamiento
– Determina la compatibilidad de los programas
• Tareas principales– Facilitar el manejo del ordenador
– Utilizar el hardware de forma eficiente
• Se ejecuta continuamente desde que arranca el ordenador
2010601. Informática Aplicada
Funciones del sistema operativo
• Comunicación con los periféricos (E/S)• Gestión de procesos:
– Coordina trabajos concurrentes (multitarea)– Aprovecha mejor la CPU
• Administración de la memoria:– Protección de la memoria de cada proceso– Mecanismo de memoria virtual
• Monitorización de recursos para contabilidad y seguridad
• Gestión de archivos• Coordinación de las comunicaciones en red
2110601. Informática Aplicada
Programas de utilidad
• Herramientas de mantenimiento del sistema
• Se ejecutan como programas separados del S.O. (se cargan en la memoria cuando se necesitan)
• Los encontramos– Incorporados al S.O. (desfragmentador de disco)
– Suministrados por otros fabricante (cortafuegos)
2210601. Informática Aplicada
Consideraciones adicionales
• Documentación– Instrucciones para instalar la aplicación
– Tutoriales
– Manuales de referencia
– Ficheros de ayuda
– Ayuda en línea (a través de la web)
– Servicios de soporte, FAQ, etc.
2310601. Informática Aplicada
Consideraciones adicionales
• Actualización– Periódicamente, las empresas comercializan
nuevas versiones de sus aplicaciones
– Motivos: mejoras, corrección de errores, adaptación a otro software (S.O.)
– Número para indicar la versión. Decimales para cambios menores
– En ocasiones, el usuario tiene derecho a actualizaciones gratuitas durante un periodo de tiempo
2410601. Informática Aplicada
Consideraciones adicionales
• Compatibilidad– Hardware:
• restricciones sobre el tipo de ordenador y recursos necesarios
• Ej.: cpu, memoria, espacio libre en disco, etc.– Software:
• Principalmente, el S.O. para el que está diseñado: Windows, Mac, Linux…
• Además del S.O., es importante su versión: Windows 95, 98, NT, Me, 2000, XP…
2510601. Informática Aplicada
Consideraciones adicionales
• Licencias– Al adquirir el software, lo que realmente se
compra es una licencia para utilizarlo
– Licencias individuales y corporativas
– Limitación principal en cuanto a la instalación en varios ordenadores y a la copia de los discos
– EULA: End User License Agreement
• Condiciones de la licencia
• Términos de la garantía
2610601. Informática Aplicada
Consideraciones adicionales
• Distribución: formas de comercializar las aplicaciones– propietario: cerrado por su dueño y de pago
– shareware: evaluación en tiempo limitado
– de demostración: limitaciones en la funcionalidad
– adware: financiado mediante publicidad (banners)
– freeware: sw gratuito, pero cerrado
– libre: sw que de puede usar, distribuir, copiar y modificar libremente
– semilibre: sw libre para uso no lucrativo
– de dominio público: renuncia a los derechos de autor
2710601. Informática Aplicada
Interfaz de usuario
• Sistemas operativos de sobremesa– Interfaz de caracteres: línea de comandos (MS-
DOS)– Interfaz gráfica (GUI)
• controla cada punto de la pantalla de forma individual
• Mac OS de Apple (1984)– Metáforas: escritorio, carpetas, documentos…– Elementos activos: iconos, botones, ventanas,
menús, barras de desplazamiento…
2810601. Informática Aplicada
MS-DOS
2910601. Informática Aplicada
Windows 3.11
3010601. Informática Aplicada
Windows 95
3110601. Informática Aplicada
Windows XP
3210601. Informática Aplicada
Windows Vista
3310601. Informática Aplicada
Windows 7
3410601. Informática Aplicada
Windows 8
3510601. Informática Aplicada
Linux
3610601. Informática Aplicada
Mac OS X
3710601. Informática Aplicada
Interfaz de usuario
• Sistemas operativos multiusuario– UNIX
• S.O. preferido para mainframes y estaciones de trabajo
• Versiones: Solaris (Sun) HP-UX (HP), AIX (IBM), IRIX (Silicon Graphics)
– Linux: • Versión de UNIX para ordenadores personales• Numerosas distribuciones para PC• MacOS X está construido sobre Linux (BSD)
– Son S.O. multiusuario: permiten varios usuarios trabajando simultáneamente sobre la misma CPU
3810601. Informática Aplicada
Interfaz de usuario
• Administración de ficheros– Carpetas específicas para los documentos de
cada usuario
– Herramientas de búsqueda por su nombre o su contenido (Google y Copernic Desktop Search)
– Herramientas específicas para archivos especiales
• iTunes, iMovie e iPhoto (Mac)
• Herramientas similares en la próxima versión de MS Windows (Longhorn)
3910601. Informática Aplicada
Interfaz de usuario
• Plataformas hw+sw– Windows XP (Pentium/Athlon): Home, Professional, Tablet
PC– Windows Server 2003 (Xeon/Opteron)– Windows CE (Pocket PC/telefonía móvil)– Palm OS (Palm, Sony,telefonía móvil)– MacOS X Panther (PowerPC)– Linux (Intel/AMD/PowerPC/Alpha)
• Alternativas para la compatibilidad de aplicaciones– Emulación– Plataformas cruzadas– Máquinas virtuales
Top Related