Ingeniería de software
El término ingeniería del "software" apareció por primera vez a finales de la década de 1950. La ingeniería de software fue estimulada por la crisis del "software" de las décadas de entre 1960 y 1980. La ingeniería del "software" viene a ayudar a identificar y corregir mediante principios y metodologías los procesos de desarrollo y mantenimiento de sistemas de "software".
Ingeniería inversa
En el caso concreto del software, se conoce por ingeniería inversa a la actividad que se ocupa de descubrir cómo funciona un programa, función o característica de cuyo código fuente no se dispone, hasta el punto de poder modificar ese código o generar código propio que cumpla las mismas funciones. La gran mayoría del software de pago incluye en su licencia una prohibición expresa de aplicar ingeniería inversa a su código, con el intento de evitar que se pueda modificar su código y que así los usuarios tengan que pagar si quieren usarlo.