PDF de programación - Tema 02 - Proceso de Desarrollo de Software - Ingeniería del Software

Imágen de pdf Tema 02 - Proceso de Desarrollo de Software - Ingeniería del Software

Tema 02 - Proceso de Desarrollo de Software - Ingeniería del Softwaregráfica de visualizaciones

Publicado el 18 de Diciembre del 2018
458 visualizaciones desde el 18 de Diciembre del 2018
654,4 KB
49 paginas
Creado hace 8a (14/10/2015)
Tema 02 –

Proceso de desarrollo de software

Ingeniería del Software

Rubén Fuentes Fernández

Dep. Ingeniería del Software e Inteligencia Artificial

Facultad de Informática

Universidad Complutense Madrid

Trabajando con Antonio Navarro, Juan Pavón y Pablo Gervás

Contenidos

• El proceso de desarrollo de software

– Introducción
– Modelos de proceso

• Modelo de madurez de capacidades del software

Rubén Fuentes Fernández

Ingeniería del Software

2

Objetivos

• Entender qué es el proceso de desarrollo de software
• Cuáles son los componentes que debe considerar un proceso 

de desarrollo de software

• Modelos de proceso de desarrollo de software
• Calidad del proceso de desarrollo de software

Rubén Fuentes Fernández

Ingeniería del Software

3

INTRODUCCIÓN

Rubén Fuentes Fernández

Ingeniería del Software

4

El producto como base del proceso

• La Ingeniería es el análisis, diseño, construcción y verificación 

de entidades técnicas (o sociales).

• La entidad sobre la que trabaja caracteriza a la ingeniería:

– Caminos, canales y puertos
– Aeronaves
– Buques
– …

Rubén Fuentes Fernández

Ingeniería del Software

5

Conceptos clave del proceso

• Personas: los que trabajan
• Producto: lo que se obtiene
• Proyecto: la pauta a seguir para desarrollar un producto
• Proceso: la pauta a seguir para desarrollar un proyecto

Rubén Fuentes Fernández

Ingeniería del Software

6

Una cena

• Personas: Empleados de una empresa de catering
• Producto: La cena que se sirve
• Proyecto: La secuencia de acciones de servir una cena 

concreta

• Proceso: Las instrucciones                                                               

de la empresa sobre                                                                    
cómo se sirve una cena

Rubén Fuentes Fernández

Ingeniería del Software

7

Una gama de automóviles

• Personas: Empleados de la marca
• Producto: Los automóviles
• Proyecto: Desarrollo de un modelo nuevo
• Proceso: Las instrucciones de la empresa sobre cómo 

desarrollar un                                                                           
modelo nuevo

Rubén Fuentes Fernández

Ingeniería del Software

8

Software

• Personas: Vosotros
• Producto: ???
• Proyecto: ???
• Proceso: Asignatura de IS

Rubén Fuentes Fernández

Ingeniería del Software

9

Aspectos a considerar en la Ingeniería

• Con independencia de la entidad debemos identificar y 

solucionar:
– Problema a resolver
– Características de la entidad
– Forma de construir la entidad
– Enfoque para resolver los errores cometidos durante el diseño y 

construcción de la entidad

– Mantenimiento de la entidad frente a su evolución

Rubén Fuentes Fernández

Ingeniería del Software

10

Tecnología estratificada

• La IS es una tecnología multicapa:

– Capa de enfoque de calidad

• Base de cualquier proceso de ingeniería
• Mejores técnicas o buenas prácticas

• Conjunto de actividades y resultados asociados que sirven para construir 

– Capa de proceso

un producto software.

– Capa de métodos

• Un método ofrece pautas para:                                                                

análisis de requisitos, diseño,                                                          
construcción de programas,                                                                     
prueba, instalación y                                                                     
mantenimiento

– Capa de herramientas

Rubén Fuentes Fernández

Ingeniería del Software

11

Objetivos de un proceso del software

• Desarrollar, operar y mantener software de forma que:

– Se apliquen principios y metodologías de ingeniería
– Se construya software que satisfaga las necesidades del cliente

• No sólo funcionales
• También coste, fiabilidad y eficiencia

– Se pueda sistematizar, disciplinar y cuantificar

• Establecer pautas sobre las que orientar, reflexionar, aprender y mejorar

Rubén Fuentes Fernández

Ingeniería del Software

12

Producto y fases genéricas

• En IS, entidad = software
• Soporte para el desarrollo de la entidad/soporte para la IS: 

modelo de proceso

• Con independencia del modelo de proceso hay tres fases 

genéricas:
– Fase de definición
– Fase de desarrollo
– Fase de mantenimiento

Rubén Fuentes Fernández

Ingeniería del Software

13

Fase de definición

• Centrada en el qué
• Se identifican los requisitos del sistema y software:

– Información a procesar
– Función y rendimiento deseados
– Comportamiento del sistema
– Interfaces establecidas
– Restricciones de diseño

• Tareas principales:

– Planificación del proyecto software
– Ingeniería de sistemas o de información
– Análisis de requisitos

Rubén Fuentes Fernández

Ingeniería del Software

14

Fase de desarrollo

• Centrada en el cómo
• Se define cómo han de plasmarse los requisitos en el sistema:

– Diseño de las estructuras de datos
– Implementación de las funciones
– Caracterización de las interfaces
– Traducción del diseño a un lenguaje de programación
– Pruebas

• Tareas principales:
– Diseño del software
– Generación del código
– Pruebas del software

Rubén Fuentes Fernández

Ingeniería del Software

15

Fase de mantenimiento

• Centrada en el cambio.
• Pueden producirse 4 tipos de cambio:

– Corrección. Corregir los defectos
– Adaptación. Modificaciones por cambio en el entorno externo
– Mejora. Ampliar los requisitos originales, a petición del cliente
– Prevención. Cambio para facilitar el cambio

• En esta fase se vuelven a aplicar las fases de definición y 

desarrollo, pero sobre software ya existente.

Rubén Fuentes Fernández

Ingeniería del Software

16

Fases, actividades y tareas

• Las fases de un proceso del software se realizan mediante una 

serie de actividades.
– Las actividades se pueden extender a lo largo de varias fases.
– Ej. comunicación con el cliente, planificación, diseño e 

implementación del software

• Las actividades a su vez se articulan mediante acciones.

– Una acción es un conjunto de tareas relacionadas que produce un 

producto del trabajo o artefacto.

– Ej. la actividad diseño e implementación puede incluir una acción de 
análisis, que puede descomponerse en las tareas realizar diagramas 
casos de uso, realizar diagramas actividades, realizar diagramas clases 
análisis…

Rubén Fuentes Fernández

Ingeniería del Software

17

Actividades de protección



Las actividades de creación de artefactos se complementan con las 
actividades de soporte o protección.
– No crean software
– Mejoran su calidad
– Facilitan su desarrollo

• Se aplican a lo largo de todo el proceso del software.
• Ejemplos de actividades de soporte:

– Documentación
– Gestión de configuración
– Seguimiento y control del proyecto de software
– Revisiones técnicas formales
– Garantía de la calidad del software
– Gestión de reutilización
– Mediciones
– Gestión de riesgos

Rubén Fuentes Fernández

Ingeniería del Software

18

Proceso del software

• Conjunto estructurado de actividades y resultados asociados 

requeridos para desarrollar un sistema de software
– Especificación: establecer los requisitos y restricciones del sistema
– Diseño: producir un modelo del sistema
– Implementación: construcción del sistema de software
– Validación: verificar que el sistema cumple con las especificaciones 

requeridas

– Instalación: entregar el sistema al usuario y asegurar su operacionalidad
– Evolución y mantenimiento: cambiar/adaptar el software según las 

demandas; reparar fallos en el sistema cuando sean descubiertos

• Debe estar explícitamente modelado si va a ser bien administrado.

Rubén Fuentes Fernández

Ingeniería del Software

19

Modelos de proceso

• Un modelo de proceso del software (o paradigma de IS) es 
una representación abstracta de un proceso del software.
– Plantilla, patrón o marco que define el proceso a través del cual se 

crea software

• Los modelos de proceso tienen en cuenta, en mayor o menor 

medida, las actividades estructurales comunes a todos los 
procesos de construcción de software.

• Un modelo de proceso ha de definir sus actividades 

estructurales así como su flujo de realización.

Rubén Fuentes Fernández

Ingeniería del Software

20

Adaptación de los modelos de proceso

• Los modelos de proceso no son fijos para una organización o 

tipo de proyecto.

• Una organización puede variar su modelo de proceso para 

cada proyecto según:
– La naturaleza del proyecto
– La naturaleza de la aplicación
– Los métodos y herramientas a utilizar
– Los controles y entregas requeridos

• Los modelos de proceso se ajustan a los proyectos concretos 

variando el conjunto de tareas en que se dividen las 
actividades estructurales.

Rubén Fuentes Fernández

Ingeniería del Software

21

Características para seleccionar el proceso

– Grado en que las actividades del proceso proporcionan resultados
Soportable por herramientas CASE



– Grado en que los desarrolladores aceptan y usan el proceso
Fiabilidad
– Capacidad de evitar o detectar errores antes de que sean defectos

– Continuidad del proceso a pesar de los problemas

– Capacidad de evolución para adaptarse


Entendible
• Visibilidad


• Aceptabilidad

• Robustez

• Mantenible

• Rapidez

– Velocidad con que el proceso proporciona un sistema a partir de una especificación

Rubén Fuentes Fernández

Ingeniería del Software

22

MODELOS DE PROCESO QUE SÍ 
SON…

Rubén Fuentes Fernández

Ingeniería del Software

23

Principales modelos de proceso del software

– Separa en distintas fases de especificación y desarrollo que se realizan 

• Modelo en cascada

en secuencia lineal.

• Prototipado

– Un prototipo sirve de modelo para la construcción del sistema final.

• Desarrollo evolutivo

• Transformación formal

– La especificación y el desarrollo están intercalados.

– Un modelo matemático del sistema se transforma formalmente en la 

implementación.

• Desarrollo basado en reutilización

– El sistema es ensamblado a partir de componentes existentes.

Rubén Fuentes Fernández

Ingeniería del Software

24

Mode
  • Links de descarga
http://lwp-l.com/pdf14580

Comentarios de: Tema 02 - Proceso de Desarrollo de Software - Ingeniería del Software (0)


No hay comentarios
 

Comentar...

Nombre
Correo (no se visualiza en la web)
Valoración
Comentarios...
CerrarCerrar
CerrarCerrar
Cerrar

Tienes que ser un usuario registrado para poder insertar imágenes, archivos y/o videos.

Puedes registrarte o validarte desde aquí.

Codigo
Negrita
Subrayado
Tachado
Cursiva
Insertar enlace
Imagen externa
Emoticon
Tabular
Centrar
Titulo
Linea
Disminuir
Aumentar
Vista preliminar
sonreir
dientes
lengua
guiño
enfadado
confundido
llorar
avergonzado
sorprendido
triste
sol
estrella
jarra
camara
taza de cafe
email
beso
bombilla
amor
mal
bien
Es necesario revisar y aceptar las políticas de privacidad