1. CONCEPTOS DE LAS KA
Requerimiento de Software Un requerimiento de software es una propiedad que debe ser
exhibida por el software desarrollado o adaptado para resolver un
problema en particular. Este problema puede deberse a
automatizar parte de una tarea de alguien que va a utilizar el
software, para apoyar los procesos de negocio de la organización
que ha encargado el software, para corregir los defectos del
software existente, para controlar un dispositivo, y mucho más.
Losrequerimientos de software en particular son una combinación
compleja de las necesidades de diferentes personas en diferentes
niveles de una organización y del entorno en el que el software
opera.
Diseño de Software La IEEE610.12-90 lo define como, el proceso de definición de la
arquitectura, componentes, interfaces y otras características de un
sistema o componente. Un diseño de software (el resultado) debe
describir la arquitectura de software, es decir, cómo el software se
descompone y se organiza en componentes, y las interfaces entre
los componentes.
Construcción del Software La construcción de software se refiere a la creación de trabajo
detallado, software significativo a través de una combinación de
codificación, verificación, pruebas unitarias, pruebas de integración
y depuración. El proceso de construcción del software en sí implica
el diseño de software y la actividad significativa de pruebas.
También se utiliza la salida de diseño y ofrece una de las entradas a
las pruebas, tanto en el diseño y en las pruebas siendo las
actividades.
Pruebas de Software Las pruebas de software consisten en la verificación dinámica del
comportamiento de un programa en un conjunto finito de casos de
prueba, adecuadamente seleccionados del normalmente infinito
dominio ejecuciones, contra el comportamiento esperado.
Mantenimiento de Software El mantenimiento del software se define en la Norma IEEE para el
Mantenimiento de Software, IEEE 1219, como la modificación de un
producto de software después de la entrega para corregir defectos,
para mejorar el rendimiento u otros atributos, o para adaptar el
producto a un entorno modificado. El estándar también se ocupa de
las actividades de mantenimiento antes de la entrega del producto
de software, pero sólo en un apéndice de información de la norma.
Gestión de Configuración de
Software
Se define formalmente (IEEE610.12-90) como "una disciplina que
aplica la dirección técnica y administrativa y de vigilancia para:
identificar y documentar las características físicas y funcionales de
un elemento de configuración, cambios de control a esas
características, registro y e informe de cambios de estado en el
2. proceso e implementación, y verificar el cumplimiento de los
requisitos especificados".
Gestión de la Ingeniería del
Software
La Gestión de Ingeniería del Software se puede definir como la
aplicación de la gestión de las actividades de, planificación,
coordinación, medición, monitoreo, control y presentación de
informes para asegurar que el desarrollo y mantenimiento del
software es sistemático, disciplinado y cuantificado (IEEE610.12-90).
Proceso de la Ingeniería del
Software
Uno de los significados, donde la palabra "EL" se utiliza, como en
ELproceso de ingeniería de software, podría implicar que hay una
sola manera correcta de llevar a cabo tareas de ingeniería de
software. Este significado se evita en la Guía, porque no existe tal
proceso. Las normas como IEEE12207 hablan de procesos de
ingeniería de software, lo que significa que hay muchos procesos
involucrados, como proceso de desarrollo o proceso de gestión de
configuración.
Un segundo significado se refiere a la discusión general de los
procesos relacionados con la ingeniería de software. Este es el
significado que se pretende en el título de las KA, y la que más se
pretende en la descripción de las KA.
Por último, un tercer significado podría significar el conjunto real de
las actividades realizadas dentro de una organización, lo que podría
ser visto como un proceso, sobre todo desde dentro de la
organización. Este significado se utiliza en las KA en muy pocos
casos.
Herramientas y métodos de la
Ingeniería del Software
Calidad de Software Muchos autores le han dado varias definiciones a este término pero
citaré la que le da la ISO 9001-00 la cual la define como “el grado en
el que un conjunto de características inherentes cumple requisitos”.
Se trataran las técnicas estáticas es decir aquellas que no requieren
la ejecución del software para su evaluación mientras las dinámicas
cubren los aspectos de calidad en las pruebas del software. Los
aspectos a tratar y la manera como un ingeniero de software
debería entender y adoptar los conceptos y características de
calidad y su relevancia en el desarrollo o mantenimiento de
software. Los aspectos de calidad deben estar inherentes desde el
momento mismo de los requerimientos así como la medición y
criterios de aceptación que evalúan estas características.