MEJORES PRÁCTICAS PARA EL ESTABLECIMIENTO Y ASEGURAMIENTO DE LA CALIDAD DE SOFTWARE

MEJORES PRÁCTICAS PARA EL ESTABLECIMIENTO Y ASEGURAMIENTO DE LA CALIDAD DE SOFTWARE

Vega Lebrún Carlos
Rivera Prieto Laura Susana
García Santillán Arturo

Volver al índice

 

 

 

 

2.4 Ingeniería de Software

Definición

Los componentes de los sistemas de información, son integrados por la ingeniería de software; aunado a ello, se encontraron las siguientes referencias:

 La aplicación práctica de las ciencias computacionales y otras disciplinas, al análisis, diseño, construcción y mantenimiento de software y a la documentación asociada [22].

 Disciplina tecnológica y administrativa orientada a la producción sistemática de productos de programación, que son desarrollados y modificados a tiempo, dentro de un presupuesto definido [6].

Los métodos, procedimientos y herramientas son conjuntados en modelos conocidos como paradigmas. Existen varios paradigmas de la ingeniería de software, algunos de ellos son: cascada, prototipo, costo, espiral, entre otros. [22]. Se han identificado diversas definiciones acerca de la ingeniería de software. El ciclo de vida es el periodo de tiempo que empieza cuando un producto de software es concebido y termina cuando el producto ya no se encuentra disponible para su uso [7]. Este ciclo de vida se compone de 5 etapas principales: (a) Planeación, (b) Análisis y Diseño, (c) Codificación, (d) Pruebas, (e) Operación y Mantenimiento.

2.4.1 Objetivos básicos de la ingeniería de software:

1. Satisfacer los requerimientos del cliente,

2. Mejorar la calidad de los productos de software,

3. Mejorar la productividad de los desarrolladores,

4. Satisfacción profesional de la gente dedicada al desarrollo,

5. Incluir nuevas tecnologías que integran los objetivos anteriores.

Por otra parte, la Figura 2.2 muestra los elementos que integran la ingeniería de software, los cuales permiten el logro de los objetivos.

El ciclo de vida que integran los sistemas de información incluye diversas etapas o fases. El número o clasificación de estás, depende del enfoque de cada persona o autor. Independientemente del número de fases analizadas, se concluyó que todas ellas integran un paradigma generalizado [22], en la Figura 2.3 se muestra este paradigma.

Durante la fase de definición, el desarrollo del sistema de información identifica la información a procesar, su función, rendimiento, interfaz y los criterios de validación necesarios para definir un sistema correcto. Así mismo, la fase de desarrollo se enfoca al “cómo”. Durante esta fase el desarrollador, intenta descubrir cómo han de implantarse los detalles de los procedimientos, cómo ha de trasladarse el diseño a un lenguaje de programación y cómo ha de realizarse la prueba del producto.

Por otra parte la fase de mantenimiento se enfoca a la integridad de errores, adaptaciones requeridas por la evolución del sistema de información y modificaciones de los requerimientos del cliente o usuario para reforzar o aumentar el sistema. Pressman define cada una de estas fases de la siguiente manera:

a) Subsistemas de la fase de definición, los sistemas de la fase de definición se muestran en la Figura 2.4 y se describen a continuación:

Análisis: Define las razones y justificaciones de los sistemas de información.

Planeación: Estimación de recursos, definición de responsabilidades y actividades así como su secuencia de ejecución.

Análisis de Requerimientos: Se define “el qué” de los sistemas de información.

b) Subsistemas de la fase de desarrollo, se muestran en la Figura 2.5 y se describen a continuación:

Diseño: Convierte los requerimientos de los sistemas de información a representaciones, como tablas, gráficas, basadas en lenguajes. Son estructuras de datos.

Codificación: Conversión del diseño de sistemas de información a instrucciones ejecutables por computadora.

Prueba: Procedimientos para verificar que no existen errores.

c) Subsistemas de la fase de Mantenimientos, se muestran en la figura 2.6 y se describen a continuación:

Integridad: Eliminar errores que surgen en la etapa de prueba.

Adaptación: Adecuar el sistema de información al entorno externo.

Funcionalidad nueva: Otorga funciones adicionales a los requerimientos originales del sistema de información.

La fase de planeación y definición, particularmente el subsistema de requerimientos de los sistemas de información. Figura 2.7

El estudio de las fases de desarrollo y mantenimiento quedan fuera del alcance y propósito de este trabajo.

2.4.2. Conclusión

Se concluye al respecto que, con el fin de formalizar más el proceso de desarrollo de productos de software, se creó el concepto de ingeniería de software. De una manera simple, la ingeniería de software puede ser definida como “el establecimiento y uso de principios de ingeniería robustos, orientados a obtener económicamente software que sea confiable y funciones eficientes sobre máquinas reales” [23].