Hay varios cursos que son más específicamente cursos de ingeniería de software que pueden o no ser parte de su programa de informática. La ingeniería de software se centra en la construcción de sistemas de software (en lugar de “proyectos”) que pueden satisfacer las necesidades del usuario de manera confiable y segura. Digo “sistemas” en lugar de “proyectos”, ya que los proyectos implican una actividad de plazo fijo. La ingeniería de software crea un sistema que dura un ciclo de vida que incluye mantenimiento, operaciones y reemplazo.
Entonces, algunas de las clases (más allá de la informática central) que debe buscar son:
- Ingeniería de software (como el uso del libro de Ian Sommerville) donde estudia una serie de temas relacionados con la gestión de ingeniería de software. También es posible que desee ver el IEEE SWEBOK (consulte IEEE SWEBOK) para conocer el alcance de lo que está cubierto allí.
- Pruebas de software. Las pruebas de software y la integración son críticas para los grandes sistemas de software.
- Programación y diseño seguros. Construir sistemas que cumplan con los requisitos de seguridad es cada vez más crítico para el diseño del sistema.
- Trabajo en equipo. Si tienes un curso que enseña trabajo en equipo como el que yo enseño, entonces tómalo. La construcción de cualquier sistema de cualquier tamaño requiere que varias personas operen juntas de manera eficiente.
- Gestión de proyectos y metodologías. Si bien los cursos de ingeniería de software abordarán estos temas, conocer más sería útil. Una metodología es crítica, pero ajustar la metodología a un tipo y tamaño de proyecto dado es igual de importante. Las técnicas de gestión de proyectos serán importantes para cualquier líder de equipo.
- Calidad y fiabilidad del software. Entender los factores que intervienen en el software de alta calidad y cómo construir sistemas confiables ayudará.