B03-T01 Ciclo de vida Flashcards

(27 cards)

1
Q

Definición de ingeniería de software

A

El establecimiento y uso de principios de ingeniería
orientados a obtener, de manera económica, software que
sea fiable y funcione eficientemente sobre
máquinas reales

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

Épocas o etapas en relación con la ingeniería del software y características esenciales de cada una.

A

1 época (50 a 60 - 65): trabajo por lotes, software a medida, sin planificación
2 época (60-65 – 75): trabajo interactivo en tiempo real, producción comercial de software, comienzo de la crisis del softwae
3 época (75 - 85-90): orientación a sistemas distribuidos, redes de área local, primeros ordenadores personales
4 época (apartir 90): Siste,asexpertos e inteligencia artificial, tecnologías orientadas a objetos, técnicas de 4 generación, tecnología CASE, se agudiza la crisis del software

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

¿Cuáles son los síntomas de la crisis del software?

A

Expectativas defraudadas, software poco fiable, incertidumbre en el coste, incumplimiento de plazos, porca portabilidad, mantenimiento costoso, falta de eficiencia

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

¿Cuáles son los principales problemas de la crisis del software?

A

Planificación y estimación, productividad vs. demanda, productividad -> calidad

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

Causas principales de la crisis

A

Falta de metodología y la expansión sin control

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

¿En qué se enfocaron para resolver el problema?

A

Planificación
y estimación de costes
del software, baja productivdad
frente a la alta demanda calidad del producto software

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

Elementos clave de la infeniería del software

A

Métodos (manera de construir el software):
* Planificación y estimación del proyecto
* Análisis de requerimientos
* Diseño (estructura de datos, arquitectura, procedimiento)
* Condificación, pruebas y mantenimiento
Herramientas (soporte automático o semiautomático):
CASE: integración de herramientas para el desarrollo del software
Procedimientos, protocolos: nexo de unión entra las herramientas y los métodos

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

Principios ingeniería software

A
  • Calidad
  • Buena gestión más importante que buena tecnología
  • Personas y tiempo no son intercambiables
  • Seleccionar el modelo de ciclo de vida adecuado
  • Determinar el problema antes de los requisitos
  • Evaluar alternativas de diseño
  • Selección de técnicas y formalismos adecuados para cada fase
  • Las técnicas son anteriores a las herramientas
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

¿Cuáles son los aspectos en los que hay que fijarse para selecionar el ciclo de vida adecuado, o la metodología correcta?

A
  • Cultura de la organización
  • Disponibilidad para correr riesgos
  • Dominio de la aplicación
  • Volatibilidad de requisitos
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

¿Cuáles son las tres fases genéricas de la ingeniería de software?

A

Definición. ¿Qué hacer?
Desarrollo ¿cómo hacerlo?
Mantenimiento ¿qué hay que cambiar?

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

Etapas generales en la definición o descubrimiento de requerimientos

A
  • Análisis global del sistema: define el papel de cada elemento del sistema informático
  • Planificación del proyecto software:Asignación de recursos, estimación de costes, definición de tareas y planificación del trabajo
  • Análisis del requerimiento software: Definir todo lo posible el dominio de la información y la función que ha de cumplir el software
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

Etapas en el desarrollo de software (¿cómo hacerlo?)

A
  • Diseño de software: trasladar los requerimientos a un diseñosoftware
  • Codificación
  • Pruebas
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

Cuáles son las 4 clases de mantenimiento definidad por Métrica 3 (MSI)

A
  • Mantenimiento correctivo: corrección de errores
  • Mantenimiento evolutivo
  • Mantenimiento adaptativo: relacionados con los cambiosde infraestructura
  • Mantenimiento perfectivo: mejora de la calidad del sistema
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

Definición de ciclo de vida

A

Conjunto de etapas por las que atraviesa el sistema desde su concepción hasta su retirada de servicio, pasando por el desarrollo y la explotación

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

¿Cuáles son los objetivos básicos del ciclo de vida?

A
  • Definición de actividades
  • Establecer criterios de transición
  • Proporcional puntos de control
  • Asegurar la consistencia
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

Modelos de ciclo de vida tradicionales

A
  • Modelo code and fix
  • Clásico o en cascada (1970)
  • Refinamiento sucesivo o mejora iterativa
  • Estándares militares e industriales
  • Modelos basados en la utilización de prototipos
17
Q

Modelos de ciclo de vida alternativos

A
  • Modelos orientados al desarrollo de software -> Modelo de ensamblaje de componentes reutilizables
  • Modelos orientados al proceso de producción de software -> Modelos cuarta generación, Modelo en espiral (Böehm, 1986)
18
Q

Modelo code and fix

A
  • Previo a 1970
  • Consistía en escribir el código del programa y luego en corregir los fallos
  • Se caracteriza por la falta de estructuración de código
19
Q

Benefición del modelo en cascada

A
  • Etapas organizadas en un modo lógico
  • Cada etapa incluye un proceso de revisión y aceptación del producto
  • El ciclo es iterativo en tanto que los problemas encontrados en la primera fase afectan a las decisiones que se tomen en las fases superiores
20
Q

Limitaciones del modelo en cascada

A
  • Solo se puede validar cuando esta terminado
  • En algunos proyectos la ordenación de etapas resulta inviable
  • Asume que los requisitos del sistema quedan congelados (para nuevos sistemas es poco realista)
21
Q

Etapas del modelo en cascada

A
  • Planificación (scope, recursos necesarios, tareas a realizar, costes, limitaciones,,)
  • Establecimiento de requisitos
  • Diseño (interfaces de usuario, estructura del sistema, decisiones sobre implantación posterior)
  • Codificación
  • Pruebas de integración
  • Implantación y validación
  • Mantenimiento
22
Q

Tipos de modelos que utilizan prototipos

A
  • Clásico
  • Maqueta (entrada y salida estáticas)
  • Prototipo evolutivo
  • Modelo de desarrollo integral
23
Q

Explica en qué consiste el modelo de prototipo evolutivo

A
  • Son prototipos que se evolucionarán, implementación parcial del sistema
  • Llegará un momento en que será necesario refactorizarlo por completo
  • Uno de estos modelos es el Modelo de RAD (Rapid Application Development)
24
Q

Componentes modelo de RAD
(Rapid Application Development)

A
  • Personas
  • Herramientas
  • Metodología
  • Gestión
25
Cuáles son lasfases del modelo de RAD
* Modelado de gestión * Modelado de datos * Modelado de procesos * Generación de aplicaciones * Pruebas de entrada
26
Características del modelo de desarrollo integral
* Hirsh, 1985 * Aquí solo se conocen unos pocos requisitos al principio. * El protitpo se va evolucionando hasta converterse en el software, el de la fase posterior será el mismo pero con unas pocas funcionalidades adicionales.
27
¿Qué problemas generan los modelos por prototipo?
* El cliente no entiende que el prototipo no es un software funcionando * El desarrollador toma decisiones no adecuadas para que funcione el prototipo. * Estas decisiones se trasladan al desarrollo del software final. * No es acto para proyectos grandes a largo plazo