EVIDENCIA 2.8
A. Explique que son
los requerimientos funcionales
Son los que describen el sistema y que debe
hacer este, eso dependería de los requerimientos, de la
función, de los usuarios entre muchos más factores.
Estos requerimientos describen con mucho
detalle cual es la función cuáles serán sus entradas y sus salidasademás de
ello definen los recursos que el sistema debe proporcionar,para alguien que
desarrolla software es normal simplificar en pocos términos su implementación
pero hay es cuando llega el inconveniente de que a veces los usuarios desean
obtener nuevos requerimientos y realizar cambios en el sistema lo que eleva
costos y tiempos es por eso que estos requerimientos desde un principio deben
ser completos y detallados lo que significa que lo solicitado debe quedar bien
definido aunque para los sistemas grandes es muy complicado debido a que son
muy complejos lo que se resumiría a una evaluación final cuando el producto
haya terminado.
B. Explique que son
los requerimientos no funcionales
Define las restricciones y lo que no puede
aceptar ni ejecutar el sistema como entradas o salidas este tipo de
requerimientos restringen propiedades que pueden surgir a lo largo del tiempo
del sistema estos son más críticos que los funcionales debido a que si se
trabaja alrededor de un sistema no funcional que no cumple las necesidades el
sistema es inútil.
Los requerimientos no funcionales surgen de
las necesidades del usuario y a los límites del presupuesto estipulado entre
otros limites más propuestos por el cliente.
C. Diga y explique los
tipos de requerimientos no funcionales
1. REQUERIMIENTOS DEL PRODUCTO:
Estos especifican el comportamiento del
producto terminado como el rendimiento y la memoria utilizable.
2. REQUERIMIENTOS
ORGANIZACIONALES:
Estos requerimientos se deben a las políticas
y procedimiento que maneje la empresa que es cliente o en la que trabaje el que
programa el sistema como por ejemplo que lenguaje de programación se va a
implementar.
3. REQUERIMIENTOS EXTERNOS:
Son requerimientos que tienen que ver con lo
ajeno al sistema es decir con el exterior como por ejemplo la manera en que el
sistema se desempeña a la hora de interactuar con otras organizaciones y si
cumple correctamente con la parte legal.
D.¿De qué manera se
debe redactar un requerimiento para que pueda ser controlado?
Se debe redactar un requerimiento de una forma
cuantitativa es decir con valores numéricos para que pueda ser medido y probado
las métricas hacen posible que puedan usarse para poder saber que propiedades
no están funcionando correctamente o cuando se miden si el sistema cumple los
requerimientos no funcionales.
E. Explique algunas de
las mediciones que se pueden hacer a los requerimientos no funcionales
-
RAPIDEZ:
·
transacciones echas cada segundo
·
El tiempo de respuesta hacia el
usuario
·
Actualización de interfaz
-
TAMAÑO:
·
Espacio ocupado en la RAM
·
K bytes
-
QUE TAN FACIL ES USARLO:
·
tiempo para formarse
·
cantidad de cuadros para ayudar a
el usuario
-
FIABILIDAD:
·
Cada cuanto falla
·
Que tan disponible es
-
ROBUSTEZ:
·
Tiempo para reiniciar luego de un
fallo
·
Qué porcentaje de eventos
ocasionan fallos
·
Probabilidad de daño a los datos
luego de un fallo
-
PORTABILIDAD:
·
A cuantos sistemas está orientado
F.
¿Que son los requerimientos del dominio?
Son derivados del dominio del sistema más que de las necesidades de los usuarios
son requerimientos funcionales nuevos u ordenar como se hacen cálculos particulares
estos es importante porque reflejan los principales fundamentos de aplicación
G.¿Qué son los
requerimientos del usuario?
Estos describen los requerimientos funcionales
y no funcionales de una forma que sea comprensible para cualquier tipo de
usuario únicamente se debe hablar con mucho detalle sobre cómo se comporta el
sistema y evitar ser muy específico en cómo se diseñó el sistema y también
evitar el uso de jergas de software que pueden confundir.
A pesar de esto pueden surgir otros problemas
al redactar el documento
1. FALTA DE CLARIDAD: se usan palabras muy precisas y se vuelve complejo
de leer
2.
CONFUSION DE REQUERIMIENTOS: No se
hace distinción de cuales son requerimientos funcionales y cuales son no funcionales
3. CONJUNCION DE REQUERIMIENTOS: se pueden fusionar muchos requerimientos
en uno solo
Los
requerimientos de usuario muy cargados restringen la dinámica para solucionar
problemas por parte del programador es por eso que los requerimientos deben ser
más enfocados en los recursos principales
H.En un requerimiento
de usuario, ¿para qué sirven los fundamentos?
Sirve para explicar
por qué se ha añadido un requerimiento en específico y es útil al momento de
realizarle un cambio a estos debido a que si en una etapa más adelante se
produce una modificaciónse tiene un fundamento para guiarse del porque estaba
presente dicho requerimiento.
I.
¿Cómo se debe escribir un requerimiento del
usuario?
1. Tomar como base un formulario estándar que pueda ser usado con
cualquier requerimiento esto hace los requerimientos más adelante más fáciles
de analizar mostrando el requerimiento inicial en negrilla incluyendo un
fundamento con cada requerimiento del usuario y siendo específicos en los
requerimientos del sistema.
2. Utilizar un lenguaje formal diferenciando entre los requerimientos
deseables y los obligatorios siendo los deseables no fundamentales y los
obligatorios los requerimientos que el sistema debe dar soporte
3. Resaltar las partes claves del requerimiento
4. Evitar palabras confusas o de vocabulario muy técnico
J.
¿Qué son los requerimientos del sistema?
Son
versiones extendidas de los requerimientos del usuario usados como puntos de
partida para diseñar sistemas se agregan detalles y explica como el sistema
debe proporcionar los requerimientos a los usuarios,se puede usar como un
contrato lo que quiere decir que debe ser muy detallado y consistente estos
requerimientos: deben hablar del comportamiento externo del sistema y las
restricciones operativas.
K. ¿Es bueno redactar
los requerimientos del sistema en lenguaje natural? ¿Por qué?
Si debido a que si
son redactados en este simple lenguaje cualquier tipo de persona puede entender
que se está hablando y puede comprender los requerimientos a tratar siendo así
una forma de expresarse en la cual no abra problemas de ambigüedad o de
interpretación debido a que al usar palabras simples se describe en detalle un
requerimiento interpretable para cualquier usuario
L.
¿Cómo se debe declarar un requerimiento del
sistema? Explique el método.
Se debe redactare en el lenguaje natural estructurado y su estructura
debe ser de forma estándar su ventaja es que se expresa de forma más fácil y comprensible
de este modo se emplean plantillas estándar estas se especifican de acuerdo al uso que se
les dé al usar dichos formularios se debe anexar la siguiente información:
1.
Descripción de la función o
entidad a tratar
2.
Describir las entradas y de donde
provienen
3.
Describir las salidas y hacia a
donde van
4.
Indicar que otras entidades forman
parte
5.
Si se usa el enfoque funcional se
debe realiza una precondición para decir a donde se quiere llegar y una post condición
mostrando a donde se llego
6.
Descripción de efectos secundarios
de la operación
El uso de estos elimina la variabilidad de
posibilidades y se añaden requerimientos de forma más específica.
M.
¿Cómo debe ser el documento de requerimientos del
software? ¿Qué debe contener?
Este documento es
la declaración oficial de que van a hacer los desarrolladores de software Debe incluir
tanto los requerimientos de el usuario como también los requerimientos del
sistema.
Si es muy extenso
los requerimientos y sus detalles pueden ir en una hoja aparte este documento
tiene muchos usuarios que van desde los altos cargos hasta los responsables del
desarrollo, al tener tantos usuarios el documento debe tener un equilibrio
entre la comunicación para los clientes como la comunicación para los
desarrolladores exactos su nivel de detalle depende de que se está
desarrollando además debe contener información sobre una posible evolución del
sistema.
A continuación se
expone el uso que le dan los distintos usuarios serian:
CLIENTES DEL SISTEMA: leen para
verificar que cumple con las necesidades
ADMINISTRADORES: usa el
documento para planificar una oferta por el desarrollo del sistema
INGENIEROS DE SISTEMAS: usa los
requerimientos para saber que se debe desarrollar
INGENIEROS PROBADORES DE SISTEMAS: utiliza los requerimientos para desarrollar las pruebas para dar visto
bueno al sistema
INGENIEROS DE MANTENIMIENTO DEL SISTEMA: usa el documento para comprender el sistema y sus relaciones
El documento es
fundamental cuando se está desarrollando el software sin embargo los métodos de
desarrollo cambian muy rápidamente haciendo obsoletos los requerimientos a
medida que se redacta el documento por lo que una parte del esfuerzo se malgasta.
SU ESTRUCTURA ES:
PREFASIO: definir quienes pueden
ser los posibles lectores y describir su versión de la historia
INTRODUCCION: debe describir las
necesidades del sistema es decir sus funciones y explicar como interactúa con
otros sistemas y además debe describir cuales son los objetivos de la empresa
que va a implementar el software.
GLOSARIO: dar definición de los términos
técnicos dentro del documento
REQUERIMIENTOS DEL USUARIO: se
debe describir los servicios que se les dan al usuario y los requerimientos no
funcionales de este su descripción debe estar echa en un lenguaje natural u
otras notaciones que sean comprensibles para los clientes
ARQUITECTURA DEL SISTEMA:
presenta una observación en general que muestra la distribución de los módulos
del sistema.
REQUERIMIENTOS DEL SISTEMA:
describir con detalle los requerimientos funcionales y no funcionales
MODELOS DEL SISTEMA: se expone
uno o más modelos del sistema que muestren que relaciones tienen los
componentes del sistema y su entorno.
EVOLUCION DEL SISTEMA: se
escribe las suposiciones sobre las cuales se basa el sistema y los cambios.
APRENDICES: debe proveer de información
de alto detalle que se relacione con la aplicación que se está desarrollando como
por ejemplo la descripción del hardware o la base de datos las cuales definen
configuraciones que optimizan el sistema
INDICE: se puede incluir varios índices
en el documento y no solo índice alfabético si no índice de funciones entre
otras.
BIBLIOGRAFIA:
LIBRO: Requerimientos del Software, extraído del libro
Ingeniería del Software escrito por Ian Somerville.