B3T3 - ESTRATEGIAS DE DETERMINACIÓN DE REQUERIMIENTOS. LA ESPECIFICACIÓN DE REQUISITOS DE SOFTWARE Flashcards

1
Q

Requisitos Funcionales vs No-Funcionales

A
  • Funcionales -> Lo que el sistema debe hacer
  • No-Funcionales -> Restricciones
    • De producto -> Comportamiento del sistema (accesibilidad, rendimiento, usabilidad)
    • De organización -> Estandares de la organización
    • Externos -> Normativas externas
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

Caracteristicas de los requisitos funcionales

A

IEEE 830-1998

  • Correcto: debe representar algo requerido o solicitado.
  • No ambiguo: tiene una sola interpretación.
  • Completo: debe incluir todo lo que el software tiene que hacer.
  • Consistente: no puede entrar en conflicto con otros requisitos.
  • Clasificado: debe categorizarse según su importancia.
  • Verificable: se ha de poder comprobar, mediante un proceso efectivo y de coste limitado, que el sistema cumple con el requisito.
  • Modificable: la estructura y estilo del documento debe hacer fáciles los cambios del requisito.
  • Trazable: debe conoce el origen de cada requisito y se facilita la referencia de cada requisito a los componentes del diseño y de la implementación.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

Fases de la Ingeniería de Requisitos

A
  1. OBTENCIÓN -> Identificación y extracción de requisitos
  2. ÁNALISIS -> Confictos e incoherencias
  3. REPRESENTACIÓN -> Casos de uso -> Especificación de Requisitos Software
  4. VERIFICACIÓN, VALIDACIÓN Y NEGOCIACIÓN -> No defectos, cubrir necesidades y resolución de conflictos con el cliente
  5. GESTIÖN -> Petición de cambios (TestLink)

Otras aproximaciones: Clasica, Swebok

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

Que normativa sustituye a IEEE 830-1998

A

ISO 29148:2011

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

Identificación de requisitos según Métrica 3

A
  • Técnicas de ALTO NIVEL:
    • JAD (Joint Application Design).
    • JRP (Joint Requeriments Planning).
    • Prototipado.
    • Factores críticos de éxito.
    • Historias de usuario.
  • Técnicas de BAJO NIVEL:
    • Entrevistas.
    • Reuniones.
    • Brainstorming.
    • PIECES.
    • Casos de uso.
    • Especificación de casos de uso.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

Casos de uso

A

Según Metrica 3 es una técnica de ALTO nivel. Según la teoría es una técnica de BAJO nivel

  • Para identificar los requisitos funcionales desde el punto de vista del usuario.
  • Para guiar todo el desarrollo
  • Modelo claro y preciso de comunicación. Caja negra para el cliente
  • Resultado observable y valioso
  • Elementos
    • Actores -> Fuera del sistema pero interactuan (personas o máquinas)
    • Caso uso -> Requisito, comportamiento. Pegado directamente al usuario
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

Notación de los casos de uso. Relaciones

A

Relaciones:

  • Bidireccional -> Línea continua, entre actores y caso de uso
  • Include (Usa) -> Línea discontinua flecha desde básico hacia común. OBLIGATORIO
  • Extends (Extiende) -> Línea discontinua desde el adicional hacia el básico. OPCIONAL
  • Precondiciones y Postcondiciones -> Condiciones que se dan antes y después del caso de uso

Pasos:

  1. Límite del sistema
  2. Actores
  3. Casos de uso
  4. Refinar (sólo teórico)

NOTA: En UML los actores y los casos de uso pueden tener herencia

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

Especificación de CU

A

Se especifica el caso de uso a bajo nivel. Descripción textual incluyendo la siguiente información

  • Nombre del caso de uso.
  • Identificador único.
  • Actores involucrados.
  • Descripción de alto nivel.
  • Tipo: indica la importancia (principal, secundario, opcional) y el nivel de detalle (esencial: descripción abstracta, real: descripción con detalles tecnológicos).
  • Referencias cruzadas con otros casos de uso relacionados.
  • Curso normal de eventos.
  • Curso alternativo de eventos: alternativas, excepciones y errores.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

Historias de usuario

A

Se definen los requisitos a alto nivel (a diferencia con los Cu)

  • En texto y usado por las metodologías ágiles.
  • Frases simples
  • Relación cercana al cliente
  • Más precisas que los casos de uso

Se dividen en tres partes:

  • CARD: título descriptivo de la funcionalidad a implementar.
  • CONVERSATION: recoge los detalles.
  • CONFIRMATION: recoge de forma transparente los criterios de aceptación para considera esa historia finalizada.

Características de las historias de usuario (INVEST):

  • Independent: no dependen de otras historias.
  • Negotiable: no es un contrato pudiendo cambiar a lo largo del tiempo.
  • Valuable: aporta valor por sí misma al usuario.
  • Estimable: estimación del esfuerzo para desarrollarla.
  • Small: su tamaño debe ser pequeño.
  • Testeable: debe contar con criterios de prueba que permitan comprobar que el comportamiento es el esperado.

COMO <rol> QUIERO <algo> PARA PODER <beneficio>

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

Casos de uso VS Historias de usuario

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

Sesiones de trabajo

A
  • Técnicas (alto nivel)
    • JAD (Joint Application Design)
    • JRP (Joint Requirements Planning)
  • Prácticas (bajo nivel)
    • Entrevistas -> cara a cara. Acta
    • Reuniones -> varias personas. Acta
  • Brainstorming (bajo nivel)
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

JAD (Joint Application Design)

A

Reducir el tiempo de desarrollo, involucra a los usuarios desde la identificación de la necesidad, alternativas de solución y requisitos.

  • Se elaboran los diagrmas durante la sesión. Al finalizar tendremos el conjunto de modelos que tendrán que ser aprobados por los participantes
  • Perfiles
    • Moderador -> dinámicas de grupo
    • Promotor -> el que impulsa el proyecto y aprueba el gasto.
    • Jefe de proyecto
    • Especialista en modelización
    • Analistas
    • Desarrolladores
    • Usuarios

Intervienen los Curritos

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

JRP (Joint Requirements Planning)

A

Potenciar la participación activa de la alta dirección

  • Perfiles
    • Moderador -> dinámicas de grupo
    • Promotor -> el que impulsa el proyecto y aprueba el gasto.
    • Director de proyecto -> subdirector
    • Consultores
    • Especialista en modelización
    • Usuarios de alto nivel

Interviene la dirección

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

Prototipos

A

En general se nos habla de una representación de Alta fidelidad. Técnica de alto nivel para identificar los requisitos. En función de la fidelidad tenemos:

  • Sketch -> Dibujo a mano alzada, ubicacion de elementos. Baja fidelidad
  • WireFrame -> Esqueleto, mostrado lo esencial, qué hace. Baja fidelidad
  • Mockup -> Apariencia y aspectos estáticos, estilo del sistema. Media fidelidad
  • Prototipo -> Combinación de las dos anteriores, qué hace y el aspecto visual concreto. Alta fidelidad

En la AGE -> Guía de Comunicación Digital para la AGE

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

WireFrame. Herramientas

A
  • Miro
  • RWD Wireframes
  • WireFrame.cc
  • MockFlow (Cuidadin al nombre!!)
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

Mockup,. Herramientas

A
  • Moqups
  • InVision
17
Q

Prototype (prototipo). Consideraciones

A

Prototipo -> Combinación de las dos anteriores, qué hace y el aspecto visual concreto. Alta fidelidad

Consideraciones

  • Identifica a los usuarios a los que va dirigido
  • Funciones que va a soportar el sistema
  • Símbolos, conceptos y términos familiares al usuario
  • Mantener coherencia
  • Abreviaturas estándard
  • Mismas reglas de iteración a través de toda la interfaz
  • Mismo formato para los mensajes de error
  • Facilitar la exploración del sistema sin riesgo
  • Dificultar acciones destructivas y no reversibles
  • Info sobre el estado de ejecución de las funciones
  • Agrupar funciones de forma lógica

Una vez hechas las consideraciones ser realiza el análisis centrado en:

  • Identificar diferentes tipos de información
  • Qué datos y en qué situación deben aparecer

En la AGE -> Guía de Comunicación Digital para la AGE

18
Q

Prototype (prototipo). Herramientas

A
  • Justinmind,
  • Balsamiq
  • Protoshare
  • Marvel
  • Origami,
  • Proto.io
  • Figma
  • Sketch.
19
Q

Especificación de requisitos (ERS). Consideraciones

A

Declaración oficial que deben implementar los desarrolladores, documentación de requisitos (rendimiento, restricciones…) y sus interfaces

IEEE 830-1998 :

  • Introducción -> Objetivo, ámbito
  • Descripción General -> Qué tiene que hacer mi sistema
  • Requisitos Específicos -> funcionales, interfaz…
  • Apéndices
  • Características:
    • Completa
    • Consistente
    • Inequivoca
    • Correcta
    • Identificable
    • Priorizable
    • Modificable
    • Verificable
20
Q

Validación de requisitos. Consideraciones

A

Tarea para la detección precoz de errores

Verificaciones:

  • Validez -> Lo que realmente necesita el usuario
  • Consistencia
  • Completitud -> se define todo lo propuesto por el user
  • Realismo -> que se pueda implementar con la tecnología actual
  • Verificabilidad -> Se podrá verificar posteriormente su cumplimiento

Técnicas:

  • Revisión formal de requisitos
  • Construcción de prototipo
  • Generación de casos de prueba
21
Q

Gestión de requisitos. Consideraciones

A

Proceso de comprender y controlar los cambios en los requisitos.

  • Lo importante: Politicas de rastreo y trazabilidad
  • Herramienta:
    • TestLink
    • Jira
  • Gestión del cambio -> consistente, controlada
    • Propuesta de cambio
    • Análisis de impacto
    • Toma de decisiones
22
Q

Requisitos según Metrica 3

A

La ingeniería de requisitos aparece en:

  • EVS 3 -> Definición de requisitos
  • ASI 2 -> Establecimiento de requisitos. Detalle y casos de uso
  • ASI 9 -> Análisis de consistencia y especificación de requisitos