Fundamentos del software: conceptos clave, lenguajes y ciclo de vida del desarrollo

Enviado por Chuletator online y clasificado en Informática y Telecomunicaciones

Escrito el en español con un tamaño de 5,09 KB

Definición

Programa informático: es una secuencia ordenada de instrucciones que, al ser ejecutadas, indican qué debe hacer el ordenador.

Tipos de software

Sistemas operativos (software de sistema)

Sistema operativo: es el programa básico cuya función es coordinar el trabajo del hardware.

Lenguaje de programación (software de desarrollo)

Lenguajes de programación: son las herramientas que ayudan a un programador a escribir nuevo software.

Aplicaciones (software de aplicación)

Aplicaciones: son programas que funcionan en el marco de un sistema operativo y dirigen tareas específicas.

Algoritmo y estructura de datos

Algoritmo: es un conjunto de instrucciones con una secuencia finita de pasos destinadas a cumplir una determinada tarea o resolver un problema.

Estructura de datos: necesaria para almacenar la información que maneja el programa.

Modos de interacción

Modo gráfico

El modo gráfico es más intuitivo y de fácil manejo: consiste en ventanas, menús desplegables, iconos y barras de menú; es el más habitual para el usuario final.

Modo consola

El modo consola (o modo texto) utiliza entrada y salida por línea de comandos y es habitual en entornos técnicos y scripts.

Lenguajes según el nivel

Código máquina

Código o lenguaje de máquina: es código binario que solo comprende el ordenador. Programar directamente en código máquina es difícil y poco práctico.

Lenguaje ensamblador

Lenguaje ensamblador: es un código con mnemónicos (pocas letras). Después de escribirlo hay que traducirlo a código de máquina. No es universal: no es compatible con todos los ordenadores.

Lenguaje de alto nivel

Lenguajes de alto nivel: son más universales, sirven en varios ordenadores y son más parecidos al lenguaje humano.

Ejemplos

C++, Java, Scratch, HTML

Compilador y ejecución

Compilador: traduce el programa completo antes de ejecutarlo. Si no hay errores crea un archivo ejecutable. Un inconveniente es que dicho ejecutable solo funciona en el sistema operativo en el que fue creado. Es más rápido en ejecución porque se traduce directamente a código máquina.

IDE (Entorno Integrado de Desarrollo)

IDE (Entorno Integrado de Desarrollo): ayudan a un programador a crear una aplicación. Normalmente incluyen:

  • Un editor de texto para escribir las instrucciones en un lenguaje de programación determinado.
  • Un compilador o traductor que permite compilar el código fuente escrito en un lenguaje concreto.
  • Opciones de ayuda y asistencia para resolver problemas en el lenguaje.

Ciclo de vida del software

Ciclo de vida:

  • Análisis: fase inicial; responde a las preguntas del proyecto, realiza un análisis de los problemas y necesidades.
  • Diseño: una vez finalizado el análisis, se establece un método que determine cómo va a funcionar la solución; es decir, una secuencia de pasos para resolver el problema planteado, con una representación gráfica de las etapas mediante símbolos.
  • Programación (o codificación): cuando tenemos un esquema claro, hay que traducirlo a un lenguaje de programación concreto.
  • Pruebas: comprobar que el programa hace lo que tiene que hacer. Existe la versión alfa para verificar y corregir errores; después se desarrolla la versión completa y la versión beta, probada por técnicos y usuarios.
  • Documentación: recopilar toda la información relativa al programa y su desarrollo y reflejarla en documentos, como el manual de usuario.
  • Mantenimiento: fase que completa el ciclo de vida; se encarga de solventar posibles errores o deficiencias de la aplicación. Siempre se necesita mantenimiento.

Otros conceptos clave

  • Software: parte lógica de un sistema o programa.
  • Proceso: cuando un programa está siendo ejecutado recibe el nombre de proceso.
  • Modo consola o modo gráfico: formas de interacción con el sistema (ya descritas).
  • Variables: pueden ser numéricas o de texto.
  • Estructura de decisión: se utiliza para tomar decisiones en un programa.
  • Función: es un conjunto de instrucciones agrupadas para realizar una tarea concreta; función = un código que hace algo concreto.
  • Booleanas: valores verdadero o falso.
  • Programas orientados a objetos: paradigma de programación basado en objetos.
  • Gráficos textuales: representación visual mediante caracteres y texto.

Entradas relacionadas: