¿Cuál es la fase de codificación en la ingeniería de software?

Primero, “Ingeniería de software” es un intento de inducir el rigor de ingeniería estándar en el ciclo de vida del software. Así como el ciclo de vida del proyecto de ingeniería de hardware implica algo más que cortar metal y soldar cables, el ciclo de vida del proyecto de ingeniería de software implica algo más que escribir código.

El ciclo de vida de un proyecto puede incluir cosas como:

  • Concepto / descripción del proyecto: ¿qué es esta “cosa” y qué hace?
  • Concepto operativo: ¿cómo “funciona” esta cosa?
  • Recopilación de requisitos de nivel superior (historias de usuarios): ¿qué se requiere para que esta “cosa” sea un éxito?
  • Diseño conceptual: diseño de nivel superior basado en conceptos y requisitos de nivel superior
  • Derivación de requisitos: deriva los requisitos de nivel inferior de los requisitos de nivel superior
  • Diseño preliminar y creación de prototipos: ahora que tiene un concepto y una idea razonable de lo que se necesita, comience a identificar las piezas principales individuales de esta “cosa” que está desarrollando. Aquí es donde puede comenzar a escribir el código prototipo “desechable” para comprender mejor cómo van a funcionar las “piezas”, los algoritmos novedosos, etc.
  • Diseño detallado: siga refinando el diseño. Aquí está escribiendo un código que probablemente se usará en el proyecto terminado. Inicio de la fase de codificación, trabajando principalmente en su propio entorno limitado de desarrollo
  • Desarrollo: código de escritura completo, en la fase de codificación, trabajando en su propio entorno limitado de desarrollo, pero fusionándose en el código de otros desarrolladores. Debería estar haciendo pruebas unitarias para todas las piezas
  • Integración / prueba: uniendo todas las piezas de hardware y software. Hacer que el software funcione en el “sistema de desarrollo”, que es un clon del eventual sistema de producción. Probar el sistema en su conjunto, incluidos los casos de borde y esquina, así como las pruebas de carga y esfuerzo.
  • Pruebas de aceptación: verificar que la “cosa” desarrollada cumple con todos los requisitos, y todas las “i” están punteadas y las “t” cruzadas. Las pruebas de aceptación exitosas indican que la “cosa” está lista para ser enviada / desplegada.
  • Implementación: implemente la “cosa” en su entorno operativo / servidor de producción. Monitoree continuamente la operación y responda rápidamente a cualquier error / problema
  • Soporte – Elimine errores y ayude a los clientes a operar la “cosa”

Como puede ver, solo una pequeña parte del ciclo de vida del proyecto se considera la “fase de codificación”

La fase de codificación es cuando el código se está escribiendo realmente. Tener algo llamado fase de codificación implica que cuando escribes software, estás adhiriendo a algún tipo de metodología. Hay que hacer cosas sobre el código que no solo está escribiendo la entrada del compilador. Tal vez deberías preguntarte (o profundizar) en el contexto de este término.