Ingeniería del software - lsi.ugr.eslsi.ugr.es/~mvega/docis/definiciones.pdf · Modelos de proceso...
Transcript of Ingeniería del software - lsi.ugr.eslsi.ugr.es/~mvega/docis/definiciones.pdf · Modelos de proceso...
Ingeniería del software
● "El establecimiento y uso de principios de Ingeniería bien fundados (y de métodos) para obtener software fiable, económico y que funcione en máquinas reales" (Bauer, 1972)
Ingeniería del software
● La aplicación de un enfoque sistemático, disciplinado y cuantificable para el desarrollo, operación y mantenimiento del software. (Institute of Electrical and Electronics Engineering (1993))
Elementos de la Ingeniería del software
Principios
Métodos
Técnicas
Herramientas
Heurísticas
Estrategias
definiciones
Principios:
Son enunciados acerca de la conveniencia, o no, de las distintas propiedades que puede poseer un producto software, y el proceso de producción correspondiente, y sobre la relación existente entre unas propiedades y otras.
definiciones
métodos:● Los métodos definen procedimientos que
permiten obtener productos software, o partes de los mismos.
● Estos procedimientos estructuran el conjunto de tareas de producción prescritas por el método.
● Los métodos se basan en los principios de ingeniería y hacen uso de técnicas y herramientas.
definiciones
técnicas
Las técnicas definen procedimientos para realizar tareas de producción de software.
La diferencia entre los conceptos de método de ingeniería y técnica no es substancial sino de grado.
Las técnicas suelen tener una visión más particular, unos objetivos menos ambiciosos y menor grado de entroncamiento con los principios de ingeniería.
definicionesHerramientas● Son útiles que facilitan la realización de las
tareas de producción. Distinguiremos dos tipos de herramientas:– de representación o modelización: son
notaciones, gráficas o de escritura, que facilitan la representación del software o de la realidad.
– automáticas de ayuda: son programas que ayudan en la realización de las tareas.
definiciones
Heurísticas
● Son formas concretas de realizar tareas, o de resolver problemas, avaladas por la experiencia práctica, que normalmente, aunque no siempre, permiten obtener buenos resultados
definiciones
Estrategias
● En la Ingeniería del Software se usa una acepción restringida de este término, a saber: una ordenación genérica de prioridades, a la hora de proponer objetivos, resolver problemas o realizar tareas.
Aspectos de los que se ocupa..
Modelos de proceso Especificación de requerimientos del sistema Especificación de requerimientos del software Diseño de software Implementación Verificación y Validación (V&V) Mantenimiento Gestión de la producción Evaluación Control y mejora de la calidad
Modelos de proceso(modelos de ciclo de vida)● El ciclo de vida es la distribución de
sucesos y actividades a lo largo del proceso de producción de Software, y durante el mantenimiento.
● Los modelos de ciclo de vida proponen formas de estructurar y gestionar el mismo.
Especificación de requerimientos del sistema● Los sistemas software forman parte de otros
sistemas más amplios, en los que se integran y deben desempeñar su misión.
● Estos sistemas deben estudiarse para garantizar que el software contribuya al logro de los objetivos globales del sistema.
Especificación de requerimientos del software
● Se trata de especificar las funciones que debe desempeñar el software, las exigencias que debe satisfacer en el desempeño de esas funciones y las que debe cumplir el proceso de producción.
Diseño de software
● El diseño consiste en la búsqueda y especificación (Especificación del Software) de una estructura para el Software que satisfaciendo los requerimientos se pueda construir con los recursos disponibles.
Implementación
● La instrumentación o implementación comprende la elaboración del código de programa y la creación de las estructuras de datos persistentes.
Verificación y Validación (V&V)
● La verificación tiene como objetivo garantizar la corrección de los productos software.
Un programa correcto● La validación tiene como objetivo garantizar
que los productos software satisfacen sus requerimientos.
El programa correcto
Mantenimiento
● Durante el mantenimiento se intenta eliminar fallos de los productos software, mejorarlos o adaptarlos a los cambios que hayan podido surgir en su entorno real.
Gestión del proceso
● Abarca todo lo referente a la planificación, organización y control del proceso de producción de software.
Evaluación de software
● Es muy útil poder valorar las cualidades de los productos software, y de los procesos de producción, mediante medidas cuantitativas en la medida de lo posible; y esto de cara al control de calidad, y a la obtención de información útil para futuros proyectos.