Fundamentos del Desarrollo de Software: Traductores y Ciclo de Vida del Proyecto

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

Escrito el en español con un tamaño de 4,42 KB

Traductores de Lenguaje y el Proceso de Compilación

Cuando los lenguajes de programación son distintos al de la máquina, es necesario un traductor que transforme el código fuente en código máquina, entendible por el ordenador. Existen tres tipos principales de traductores:

  • Ensamblador

    Se encarga de traducir el lenguaje ensamblador al lenguaje máquina.

  • Intérpretes

    Traducen las sentencias de un lenguaje de alto nivel a código máquina y, tras comprobar que no tienen errores, las ejecutan. Todo ello se realiza en un solo proceso.

  • Compilador

    La diferencia principal con los intérpretes es que la operación se realiza en dos fases:

    1. Primera Fase: Traducción

      Traduce completamente el programa a código máquina. Esta fase, a su vez, se subdivide en varios pasos:

      1. Edición: Consiste en escribir el programa utilizando las sentencias correspondientes del lenguaje. Este código se almacena en un soporte, obteniendo el código fuente (por ejemplo, en C, con extensión .c).
      2. Compilación: En esta fase se traduce el código fuente a código objeto (en C, con extensión .obj). Se comprueba que no existan errores sintácticos o de compilación.
      3. Montaje o Enlazado (Linkado): En esta fase se enlaza el programa con determinadas rutinas internas. Si el programa está realizado en programación modular, se enlazan los distintos módulos. Si no hay errores, se crea el archivo ejecutable.
    2. Segunda Fase: Ejecución

      Se produce cuando el sistema operativo llama al archivo ejecutable. Los principales errores que pueden surgir durante la ejecución son:

      1. Error en la entrada de datos que provoca una detención del sistema.
      2. Bucles mal definidos que causan un funcionamiento incorrecto.
      3. Datos de salida incorrectos.

    Pueden surgir errores durante la compilación, el enlazado o la ejecución. Para solucionarlos, es necesario regresar a la fase de edición y corregirlos.

El Ciclo de Vida del Software: Fases del Desarrollo de Proyectos

El número de fases del desarrollo de un proyecto de software depende del modelo de ciclo de vida por el que se opte. El ciclo de vida abarca desde que se propone un sistema hasta que se deja de utilizar. A continuación, se describen las fases comunes:

  1. Análisis de Requisitos

    En esta fase se estudia el "qué": qué es lo que se quiere hacer y qué producto se desea desarrollar. Para ello, se recopilan los requisitos del producto con el fin de crear un modelo que sea posible implementar en un sistema informático, buscando la máxima precisión posible. Esta fase requiere una gran comunicación con el cliente para conocer todas sus necesidades y restricciones.

  2. Diseño del Sistema

    Se especifica el "cómo". En esta fase se establece la solución óptima al problema, con los detalles suficientes para la realización de una aplicación de buena calidad, considerando los recursos lógicos y técnicos del sistema.

  3. Codificación y Pruebas

    Consiste en escribir el programa en el lenguaje o lenguajes de programación seleccionados, basándose en las especificaciones de diseño. Una vez escrito, se realizan las pruebas necesarias para asegurar la mayor fiabilidad posible. Si se detectan errores, es preciso depurarlos, lo que podría requerir volver a fases anteriores.

  4. Explotación e Implantación

    En esta fase se realiza la implantación del sistema en el entorno físico donde funcionará. Se instala el programa y se lleva a cabo la prueba de aceptación. En caso de automatizar un sistema preexistente, se realiza la conversión de los datos al nuevo sistema.

  5. Mantenimiento del Software

    Existen tres tipos de mantenimiento:

    • Correctivo: Consiste en corregir los errores que surgen durante el funcionamiento diario.
    • Adaptativo: Consiste en adaptar los programas existentes a cambios lógicos o físicos del sistema (por ejemplo, nuevas versiones de sistemas operativos o hardware).
    • Perfectivo: Consiste en mejorar una aplicación a partir de nuevos requisitos de los clientes o para optimizar su rendimiento.

Entradas relacionadas: