Está. En su libro, The Mythical Man-Month, Fred Brooks explica la diferencia entre esos raros y exitosos 1) programas escritos en garaje, 2) productos de programación, 3) sistemas de programación y, finalmente, el producto de 4) sistemas de programación. En resumen, las empresas tecnológicas más exitosas de la actualidad generalmente comienzan construyendo un 1) programa cuyo valor aumenta a medida que evoluciona hacia el último (4) como parte de un sistema más grande (3) o un producto independiente (2). Este viaje evolutivo es el material de la teoría y la práctica de la ingeniería de software y por qué debería leer los ensayos de Brooks que discuten los elementos clave del desarrollo de software para la industria.
Sin embargo, en un programa de estudios universitarios, la ingeniería de software se divide en varios temas bajo tres paraguas principales;
- Métodos de ingeniería de software (cubre las mejores prácticas para desarrollar productos empresariales, por ejemplo, ingeniería de requisitos, diseño de interacción, mejora de la calidad del proceso, modelado de rendimiento, etc.)
- Herramientas de ingeniería de software (principalmente arquitecturas y paradigmas que incluyen diseño orientado a objetos, pruebas de software, diseño de bases de datos, programación concurrente, prácticas de ingeniería ágiles, etc.)
- Seguridad de software y sistemas (el negocio de seguridad de infraestructura, riesgo y gestión de personas)
Existen diferentes perspectivas sobre lo que constituye el enfoque central de la ingeniería de software, sin embargo, espero haber proporcionado un resumen digno.
- ¿Es posible hacer una maestría en gestión de ingeniería después de graduarse en informática? ¿Alguien puede sugerir universidades que ofrezcan una maestría en administración de ingeniería en los Estados Unidos?
- ¿Cómo produce Alemania tantos ingenieros y científicos tan buenos?
- ¿Cuáles son las oportunidades para un ingeniero eléctrico en o alrededor de Goa o un trabajo real en línea?
- ¿Qué haré después de completar la ingeniería?
- ¿Por qué es tan importante entender los fundamentos de diferentes campos de ingeniería?