Please enable JavaScript.
Coggle requires JavaScript to display documents.
Fundamentos de Ingeniería en software - Coggle Diagram
Fundamentos de Ingeniería en software
3.1 Características de los requisitos.
Los requisitos son una etapa clave en el ciclo de
vida
Su coste es alrededor de 10-15%
del
coste total del
proyecto.
Un error en los requisitos
puede ser hasta 100 veces más
costoso
que
un error en el código.
Los procesos/sistemas complejos implican miles de
requisitos
Necesidad de gestión y soporte automatizado
Una completa especificación de requisitos Software debe
ser:
Clara
su redacción debe ser simple y clara
para aquellos que vayan a consultarlo
en un futuro
Correcta
sí y solo sí, cada requisito especificado
es
un requisito que el software debe cumplir.
Consistente
no se contradice a sí misma
es decir, si ningún subconjunto de requisitos
ahí descritos se contradicen o entran
en conflicto.
Coherente
Comprensible
Modificable
su estructura y estilo son tales que
cualquier cambio a los requisitos pueden
ser hechos fácil
completa y consistentemente sin perder la estructura
Verificable
ya sea por inspección, análisis de prueba
o demostración.
Cuando se
escriba un requerimiento, se deberá de determinar
1 more item...
Priorizada
Categorizar el requerimiento nos ayuda
a saber
el grado de necesidad del mismo
sin ambigüedades
Trazable
se refiere
a la posibilidad de verificar la historia
ubicación o aplicación de unítem
a
1 more item...
Origen creíble
3.2 Tipos de requisitos
3.2.2 No funcionales
Son restricciones
de los
servicios o funciones ofrecidos por el sistema.
Incluyen restricciones de tiempo
sobre el proceso de desarrollo
estándares, y otros.
son
aquellos requerimientos que no se refieren directamente
a las
funciones específicas que entrega el sistema
1 more item...
De forma alternativa
definen las restricciones del sistema
como la
capacidad de los dispositivos de entrada/salida
y la
representación de datos que se utiliza
en la interface del sistema.
3.2.3 De dominio
Son requerimientos que provienen del dominio
de aplicación del sistema y que reflejan
las características de ese dominio.
Éstos pueden ser funcionales o no funcionales.
Se derivan del dominio del sistema
más que de las necesidades especificas
de
los usuarios.
Pueden ser requerimientos funcionales nuevos
restringir los existentes o establecer
cómo se deben ejecutar cálculos particulares.
Los requerimientos del dominio son importantes
debido a
que a menudo reflejan los fundamentos
del dominio de aplicación
Si estos requerimientos no se satisfacen
es imposible hacer que el sistema trabaje
de forma satisfactoria
Ejemplo en un Sistema de Biblioteca,
este deberá proveer visores para que el
usuario lea
documentos en el almacén de documentos
3.2.1 Funcionales
son
declaraciones de los servicios que proveerá el sistema
de la
manera en que éste reaccionará a entradas
En algunos casos
también declaran explícitamente lo que el sistema
no debe hacer.
describen la funcionalidad o los servicios
que se espera que éste provea.
Estos dependen del tipo de software
y
del sistema que se desarrolle
y
de los posibles usuarios del software.
Cuando se expresan como requerimientos del usuario
habitualmente se describen de forma general
requerimientos funcionales del sistema describen con detalle
la función
de éste, sus entradas y salidas, excepciones
3.3 Tareas y técnicas
de la ingeniería de requisitos.
Tareas:
conjunto de actividades en los cuales
utilizando técnicas y herramientas
se analiza un problema y se concluye
con la
especificación de una solución.
Inicio:
3 more items...
Obtención:
2 more items...
Elaboración:
1 more item...
Negociación:
1 more item...
Tecnicas:
permiten la captura requisitos de software
la recopilación de la información
y en
qué casos es adecuada usar cada cual.
algunas tecnicas:
Técnica: Entrevistas.
Forma de conversación, no de interrogación.
Mayor fuente de información del analista
Oportunidad para conocer el grado de aceptación
Cuestionarios: Las entrevistas y cuestionarios
1 more item...
Grabaciones De Video Y De Audio
Brainstorming (Tormenta De Ideas)
3.4 Obtención de requisitos
es una de las etapas fundamentales
diseño y construcción de una pieza
pues contribuye a la realización
de una primera descripción del problema
3.4.1 Técnicas de recopilación de información
El método elegido por el investigador depende
de la
pregunta de investigación que se formule
Algunas:
Encuesta
es una serie de preguntas dirigidas
a los participantes en la investigación
pueden ser administradas en persona, por correo
teléfono o electrónicamente
También pueden administrarse a un individuo
o a
un grupo
Entrevista
es una interacción que involucra al investigador
y a un(os) participante(s)
se hacen preguntas para obtener información detallada
Prueba
es una forma o una tarea física
o mental para la cual se ha
determinado un estándar normal
Evaluaciones Fisiológicas
medidas en que las características físicas
de un participante son registradas
como la
ritmo cardíaco o fortaleza física
la presión arterial
Observaciones
son registros tomados que no requieren participación
se hacen mientras los participantes están involucrados
en conductas
rutinarias y se utilizan como un indicador
3.4.2 Representación de requisitos.
una vez que los requerimientos
han sido
capturados, deben ser analizados
se necesita contar con elementos
que permitan la compresión y representación
fáciles de:
Entender
Verificar
Modificar
Comunicar
Lenguaje natural
Narración del problema y la solución requerida
Mapas conceptuales
se desarrollan con el usuario y
1 more item...
sketches y storyboards
representación sobre el papel de forma
1 more item...
Lenguaje Z
esta basada en la teoría de conjuntos
1 more item...
Prototipos
software no funcional que muestra las
1 more item...
Casos de uso y UML
Casos de uso
1 more item...
3.5 Herramientas CASE para la ingeniería de requisitos
Hasta hace poco tiempo las herramientas
para la
gestión de requisitos de software se limitaban
a editores de texto
Actualmente, se cuenta con múltiples opciones
como las que se mencionan a continuación:
IRQA 43
diseñada para soportar las actividades realizadas
en el
1 more item...
RETO
capturar los aspectos funcionales del sistema
básicamente, mediante tres técnicas complementarias entre si
3 more items...
CONTROLA
Herramienta de apoyo al proceso de ingeniería
de software en pequeñas empresas
1 more item...
OSRMT (Open Source)
Herramienta libre para la gestión de requisitos
trabaja en arquitectura cliente/servidor,
1 more item...
JEREMIA5
cliente exclusivamente
lo cual no permite la posibilidad
1 more item...
3.6 Especificación de requisitos de software.
El objetivo principal
es servir como medio de comunicación
entre clientes, usuarios, ingenieros
de requisitos y desarrolladores
deben recogerse tanto las necesidades
de clientes y usuarios
como
los requisitos que debe cumplir el sistema
a desarrollar para satisfacer dichas necesidades
debe ser un documento consensuado entre
todas
las partes y tener un carácter contractual,
de forma que cualquier cambio
que se desee realizar en él
una vez acordada la primera línea base
deba aplicarse siguiendo el Procedimiento de Control
de Cambios establecido en el proyecto.
Estructura básica y dependencias externas
se
asumirá que la ERS es un documento
que contiene tanto las necesidades de negocio
de clientes y usuarios, como la propuesta
de solución de los ingenieros de requisitos
Estructura detallada y dependencias internas
Analizar los requisitos del sistema
Verificar la
calidad de los requisitos del sistema
y Validar los requisitos del sistema,
Buenas prácticas y recomendaciones de uso
requisito, objetivo de negocio, proceso, etc.
Descripción general
Perspectiva del producto
Indicar si es un producto independiente
o parte de un sistema mayor
Funcionalidad del producto
Resumen de las funcionalidades principales
que el producto debe realiza
sin entrar en
información de detalle.
Características de los usuarios
Descripción de los usuarios del producto
incluyendo nivel educacional, experiencia
y
experiencia técnica.
Restricciones
Descripción de aquellas limitaciones a tener en
cuenta a la hora de diseñar
y
desarrollar
el sistema
Suposiciones y dependencias
aquellos factores que, si cambian
pueden afectar a los requisitos.
Evolución previsible del sistema
Identificación de futuras mejoras al sistema
que podrán analizarse e implementarse en
un futuro
Requisitos específicos
Debe contener una lista detallada y completa
de los requisitos que debe cumplir
el sistema
a desarrollar
Requisitos comunes de los interfaces
Descripción detallada de todas las entradas
y salidas del sistema de software
Interfaces de usuario
Describir los requisitos del interfaz
de usuario para el producto
Interfaces de hardware
Especificar las características lógicas
para cada interfaz entre el producto
y los
componentes de hardware del sistema.
Interfaces de software
Indicar si hay que integrar el producto
Indicar si hay que integrar el producto
con otros productos de software
Interfaces de comunicación
Describir los requisitos del interfaces de comunicación
si hay comunicaciones con otros
sistemas y cuales son las protocolos
Requisitos funcionales
Requisitos no funcionales
Seguridad
Requisitos de rendimiento
Fiabilidad
Disponibilidad
Mantenibilidad
Portabilidad