La ingeniería de software tiene como objetivo, construir una solución de software eficiente que satisfaga las necesidades requeridas por un cliente.
Parece muy fácil de enunciar, pero como ustedes sospechan, es difícil de conseguir si no se tienen los procedimientos, las metodologías y las herramientas adecuadas.
El conseguir este objetivo implica una serie de conceptos, criterios y habilidades las cuales deben ser tomadas en cuenta, ya que podrían no ser adaptables debido a factores ambientales y de los mismos profesionales.
¿Cómo lograremos llegar a cumplir el objetivo de esta ingeniería?
La respuesta es dada por la misma ingeniería de software. Ella es la responsable de facilitar los elementos para llegar a dar esa solución de software eficiente.
Parámetros deseables de un software
- Compatibilidad: Es la facilidad por la cual el software puede ser combinado con otro software.
- Correctitud: Es el grado en que el software cumple con los requerimientos específicos, y que dichos requerimientos cumplan con las necesidades asociadas.
- Corrección: Facilidad con la cual los errores latentes pueden ser encontrados y corregidos en el software.
- Eficiencia: Grado en el que el software utiliza los recursos de hardware de manera efectiva. A menudo la eficiencia se sobre-enfatiza a expensas de otras metas.
- Flexibilidad: Facilidad con la que el software puede ser modificado para cumplir con cambios requeridos.
- Mantenible: Es una combinación de correcciones y flexibilidad.
- Portabilidad: Es la facilidad con la cual un software puede ser transformado de una plataforma de hardware o de software distinta.
- Confiabilidad: Grado en el que el software funciona correctamente a través del tiempo.
- Reusabilidad: El software puede ser usado para propósitos distintos del origen.
- Robustez: Grado con que el software funciona correcta mente en condiciones anormales.
- Salvedad: Grado con el que el software funciona sin daños accidentales.
- Seguridad: El software se protege así mismo de accesos o modificaciones no autorizadas.
- Examinabilidad: Facilidad por la cual el software puede ser examinado para su corrección, eficiencia, confiabilidad y robustez.
- Comprensión: Facilidad con la cual los humanos pueden comprender el software y su documentación.
- Uso-amigable: Facilidad con que los humanos pueden usar u operar e; software.
- Validez: Es la facilidad por la cual el software puede demostrar ser correcto.
- Verificación: El software puede demostrar cumplir el estándar de desarrollo de procedimientos.