6.1) Identifique y comente breve mente 4 tipos de requerimientos que se pueden definir para un sistema informático.
Requerimientos del Usuario:
Deben describir los requerimientos funcionales y no funcionales, que
sean comprensibles por los usuarios sin conocimiento técnico
detallado.
Requerimientos del sistema:
Los requerimientos del sistema son versiones extendidas de los
Requerimientos del usuario que son utilizados por los ingenieros de
software como punto de partida para el diseño del sistema. Agregan
detalle y explican como el sistema debe proporcionar los
requerimientos del usuario. Deben ser una especificación completa y
consistente de un sistema.
Requerimientos funcionales:
Describen las funciones que el sistema va a hacer. Estos
requerimientos dependen del tipo de software que se desarrolla, los
posibles usuarios del software y del enfoque en la organización al
redactar los requerimientos; los requerimientos funcionales del
sistema describen con detalle la función de este, sus entradas y
salidas, excepciones, etc.
Requerimientos no funcionales:
Son aquellos requerimientos que no se refieren directamente las
funciones específicas que proporciona el sistema, si no a las
propiedades emergentes, como son la fiabilidad, el tiempo de
respuesta del sistema y la capacidad de almacenamiento. De forma
alternativa define las restricciones del sistema de los dispositivos de
entrada y salida.
6.2) comente los problemas del lenguaje natural para definir los requerimientos del usuario y del sistema y muestre utilizando ejemplos.
Sin embargo pueden surgir diversos problemas cuando se redactan con frases del lenguaje natural en un documento de texto:
1. Falta de claridad. Algunas veces es difícil utilizar el lenguaje de forma precisa o inexacta, sin hacer el documento poco conciso y difícil de leer.
2. Confusión de requerimientos: no se distinguen claramente los requerimientos funcionales y no funcionales, las metas del sistema y la información para el diseño.
3. Conjunción de requerimientos: diversos requerimientos diferentes se puede expresar de forma conjunta como un único requerimiento.
6.3) Descubra las ambigüedades en la siguiente declaración de requerimientos de una parte de un sistema expendedor de billetes.
Un sistema automático de expedición de billetes vende billetes de
tren. Los usuarios seleccionan su destino e introducen una tarjeta de
crédito y número de identificación personal. El billete del tren se
expide y se carga su cuenta de la tarjeta de crédito. Cuando el
usuario presiona el botón de inicio, se activa un menú que muestra
los posibles destinos, junto con un mensaje para el usuario que le
indica que seleccione el destino. Una vez que se ha seleccionado un
destino se pide a los usuarios que introduzcan su tarjeta de crédito.
Se comprueba su validez y entonces se le pide introducir un
identificador personal. Cuando la transacción de crédito se haya
validado, se expide el billete
El texto esta desordenado y debería empezar en un punto diferente del párrafo
Algunas palabras no tienen concordancia con el resto del texto
No especifica de una forma clara la utilización de sistema
Tiene también algunos errores gramaticales como: “expedición de billetes vende billetes”.
6.4) Vuelva a redactar la descripción anterior utilizando el enfoque estructurado descrito en este capítulo. Resuelva de forma apropiada las ambigüedades identificadas.
El usuario ingresa su tarjeta y sus datos respectivos, el sistema valida los datos ingresados, si son correctos. Si son correctos el usuario ingresa al sistema si no lo son el sistema muestra un mensaje de datos erróneos. Una vez que el usuario ingresa al sistema se muestra todas las ciudades de destino junto con su valor, el usuario elije un destino y acepta la compra del billete, el sistema valida si el usuario cuenta con fondos en la tarjeta, debita el costo del billete, muestra un mensaje si desea realizar otra transacción, si el usuario desea realizar otra transacción vuelve a mostrar las ciudades de destino y continua con este proceso, sino el sistema emite el billete y el usuario retira su tarjeta.
6.6) Utilizando la técnica sugerida aquí, en la que lenguaje natural se presenta en una forma estándar redacte requerimientos del usuario verosímiles para las siguientes funciones:
• La función de expedición de dinero en un cajero automático de un banco Validar tarjeta.
Se valida la tarjeta del usuario verificando el número de tarjeta y su número secreto (PIN)
Tratar petición. El sistema trata la petición del usuario. Para
la retirada de dinero. Se debe consultar la base de datos
para comprobar el saldo del usuario y cargar la cantidad
retirada. Fíjese aquí en la excepción si el solicitante no tiene
suficiente dinero en su cuenta.
Completar transacción. Se devuelve la tarjeta del usuario y, cuando se ha extraído, se entrega el dinero y el recibo.
• La verificación de ortografía y la función de correcciones en un procesador de texto.
Validar verificación de ortografía y correcciones de textos
Usar una biblioteca con las palabras para hacer comparación con el diccionario de la RAE Señalar errores de ortografía y sus posibles errores gramaticales. Corregir automáticamente las palabras comunes.
•Un sistema de auto servicio de bomba de gasolina que incluya un lector de tarjetas de crédito. El cliente pasa la tarjeta atreves del lector y especifica la cantidad de combustible requerido. Este se entrega y se hace cargo a la cuenta del cliente.
Validar tarjeta. Se valida la tarjeta del usuario verificando el número de tarjeta y su número secreto (PIN)
Tratar petición. El sistema trata la petición del usuario. Para
la carga de gasolina en el vehículo, además de la cantidad
de combustible, que desee, se descuenta de la cuenta del
usuario Se debe consultar la base de datos para comprobar
el saldo del usuario y cargar la cantidad a gastar.
Dar aviso si el solicitante no tiene suficiente dinero en su cuenta.
Completar transacción. Se devuelve la tarjeta del usuario y,
cuando se ha extraído, se entrega hace la carga de
combustible y se le entrega el recibo.
6.7) Describa los requerimientos no funcionales que pueden existir en un sistema. De ejemplos de cada uno de ellos.
1. Hacer que el sistema sea liviano, para así mantener una rapidez
en los procesos del producto; como por ejemplo, que no esté
entre 5000 y 25000 líneas de código como máximo.
2. Todas las partes deber hacerse, con el mismo Lenguaje, sea
Java C+ u otros, además de tener un manejo simple para toda
la compresión de los usuarios con lo que interactuara; por
ejemplo hecho con base HTML simple.
3. El sistema debe mantener un sistema de redes o protocolos
estándar, para una fácil conexión con otros departamentos o
empresas, las bases de datos y demás deberán hacerse con un
sistema que sea usado comúnmente, ya sea MSQL o (IIS).
6.8) Redacte un conjunto de requerimientos no funcionales para el sistema expendedor de billetes, especificando su fiabilidad y su respuesta en el tiempo.
1. el usuario no necesite introducir la tarjeta de crédito para retirar dinero, El usuario pueda con su nombre e identificación consultar el saldo.
2. El usuario pueda retirar dinero con solo detectar la huella.
3. Que el usuario desee la ruta que él quiera.
4. Que el usuario compre múltiples de tiquetes
5. El usuario retire dinero no con la tarjeta de crédito sino con un chip
6.9) Sugiera la manera en que un ingeniero responsable de preparar la especificación de requerimientos del sistema podría controlar las relaciones entre los requerimientos funcionales y no funcionales.
El ingeniero responsable de preparar la especificación de requerimientos debe hacer un diagnóstico de los procesos que debe realizar el sistema, dependiendo del tipo de software que se esté desarrollando, en base a este estudio se debe redactar los requerimientos funcionales de forma clara y entendible por el usuario sin utilizar términos técnicos de ser posible. Así mismo debe realizar un análisis de los requerimientos no funcionales que debe cumplir el sistema para realizar las funcionalidades de forma rápida, confiable y eficaz, En este punto el desarrollador debe prestar atención a cuestiones técnicas como plataforma a desarrollar el software, base de datos, entono en que se va a ejecutar el software (web, escritorio), la interfaces que requiere el sistema, la decisión por parte de desarrollador de utilizar la tecnología adecuada se basa en los requerimientos funcionales es decir en las procesos o servicios que el sistema debe realizar. En forma general Una buena especificación de requerimientos debe ser:
Completa: Todos los requerimientos deben estar reflejados en ella y todas las referencias deben estar definidas.
Consistente: Debe ser coherente con los propios requerimientos y también con otros documentos de especificación.
Inequívoca: La redacción debe ser clara de modo que no se pueda mal interpretar.
Correcta: El software debe cumplir con los requisitos de la especificación.
Trazable: Se refiere a la posibilidad de verificar la historia, ubicación o aplicación de un ítem a través de su identificación almacenada y documentada.
Priorizable: Los requisitos deben poder organizarse jerárquicamente según su relevancia para el negocio y clasificándolos en esenciales, condicionales opcionales.
Modificable: Aunque todo requerimiento es modificable, se refiere a que debe ser fácilmente modificable.
Verificable: Debe existir un método finito sin costo para poder probarlo.
6.10) Ha obtenido un trabajo con un usuario de software quien ha contratado a su anterior compañía para desarrollar un sistema. Usted descubre que la interpretación de su compañía actual de los requerimientos es diferente de la tomada por su anterior compañía. Comente que haría en tal situación. Usted sabe que los costes de su compañía actual se incrementaran si las ambigüedades no se resuelven. También tiene una responsabilidad de confidencialidad para su anterior compañía.
• Lo mejor es la comunicación con el usuario, así se evitan muchos problemas y hasta la confidencialidad con la empresa, en el desarrollo de un software no hay mejor herramienta que la comunicación con el usuario que lo pide
REQUERIMIENTOS DEL SOFTWARE
Suscribirse a:
Enviar comentarios (Atom)
0 comentarios:
Publicar un comentario