Actividades del desarrollo del software

El proceso para el desarrollo de software, también denominado ciclo de vida del desarrollo de software, es una estructura aplicada al desarrollo de un producto de software. Hay varios modelos a seguir para el establecimiento de un proceso para el desarrollo de software, cada uno de los cuales describe un enfoque diferente para diferentes actividades que tienen lugar durante el proceso. Algunos autores consideran un modelo de ciclo de vida un término más general que un determinado proceso para el desarrollo de software. Por ejemplo, hay varios procesos de desarrollo de software específicos que se ajustan a un modelo de ciclo de vida de espiral.

Actividades del desarrollo de software

Planificación

La importante tarea a la hora de crear un producto de software es obtener los requisitos o el análisis de los requisitos. Los clientes suelen tener una idea más bien abstracta del resultado final, pero no sobre las funciones que debería cumplir el software.

Una vez que se hayan recopilado los requisitos del cliente, se debe realizar un análisis del ámbito del desarrollo. Este documento se conoce como especificación funcional. Planificación: es el paso previo al inicio de cualquier proyecto de desarrollo y sin dudas el más importante. En este se definen los requerimientos y funcionalidades que debe tener el software, mediante el trabajo en conjunto entre los desarrolladores, el departamento de ventas, los estudios de mercado y, fundamentalmente, el contacto con el cliente. En este punto se realizan asimismo los análisis de riesgo para el emprendimiento y se fijan los requisitos de aseguramiento de la calidad.

✔️ Ejemplo: Una empresa quiere un sistema para gestionar inventarios. El cliente pide “algo que le ayude a no quedarse sin stock”, pero no sabe exactamente cómo.
En esta fase, los analistas conversan con el cliente, estudian el mercado, definen riesgos y elaboran una especificación funcional (qué funciones realiza el sistema).

  • Registrar productos.
  • Controlar existencias.
  • Alertar cuando falte stock.

Implementación, pruebas y documentación

La implementación es parte del proceso en el que los ingenieros de software programan el código para el proyecto de trabajo que está en relación de las demandas del software, en esta etapa se realizan las pruebas de caja blanca y caja negra.

Las pruebas de software son parte esencial del proceso de desarrollo del software. Esta parte del proceso tiene la función de detectar los errores de software lo antes posible.

La documentación del diseño interno del software con el objetivo de facilitar su mejora y su mantenimiento se realiza a lo largo del proyecto. Esto puede incluir la documentación de un API, tanto interior como exterior. Prácticamente es como una receta de cocina.

✔️ Ejemplo: El equipo crea una aplicación web con formularios para registrar productos y un módulo que envía correos de alerta cuando las existencias bajan de cierto nivel.

  • Se realizan pruebas de caja blanca (validar el código).
  • Se realizan pruebas de caja negra (validar las funciones sin mirar el código).
  • Se escribe documentación técnica y de usuario: manual de instalación, guía de uso, API para integraciones.

Despliegue y mantenimiento

El despliegue comienza cuando el código ha sido suficientemente probado, ha sido aprobado para su liberación y ha sido distribuido en el entorno de producción.

Entrenamiento y soporte para el software es de suma importancia y algo que muchos desarrolladores de software descuidan. Los usuarios, por naturaleza, se oponen al cambio porque conlleva una cierta inseguridad, es por ello que es fundamental instruir de forma adecuada a los futuros usuarios del software.

El mantenimiento o mejora de un software con problemas recientemente desplegado, puede requerir más tiempo que el desarrollo inicial del software. Es posible que haya que incorporar código que no se ajusta al diseño original con el objetivo de solucionar un problema o ampliar la funcionalidad para un cliente. Si los costes de mantenimiento son muy elevados puede que sea oportuno rediseñar el sistema para poder contener los costes de mantenimiento.

✔️ Ejemplo: La aplicación se sube a los servidores de la empresa. Se entrena al personal de almacén para usarla.

  • Si aparece un error (ej: el sistema no envía la alerta correctamente), se corrige con un parche.
  • Si más adelante se requiere una nueva función (ej: integración con facturación), se planifica y se añade.

Comentarios

  1. Esta actividad me ha permitido explorar diferentes maneras de construir el software y como no existe una metodología perfecta ya que cada proyecto es diferente de otro y tienen sus propias necesidades, por lo que es importante adaptarse al contexto de cada desarrollo y estar dispuesto a explorar distintas maneras y dinámicas de trabajo en equipo.

    ResponderBorrar

Publicar un comentario