03 Requisitos de software
Elver Suárez Alzate
Esto es lo que el cliente quiere:
Esto es lo que recibe
Proyecto Bicicleta
[Cliente] Lo primero que hemos notado es que le faltan dos
ruedas.
[Manager] Sí, hemos optado por el diseño minimalista que va
con nuestra visión de empresa: “práctico, funcional, óptimo”.
[Cliente] Pero un Porsche con dos ruedas no casa con nuestro
modelo de negocio. Lonecesitamos de cuatro ruedas.
[Manager] Creo que podremos refactorizar el Porsche y hacer
un clone para añadir dos ruedas extras
Proyecto Bicicleta
[Cliente] Perfecto. Bien, la segunda incidencia No
encontramos la capota.
[Manager] Sí. Lo querías descapotable, ¿no?. Pues hemos
simplificado mucho la usabilidad retirando la capota.
[Cliente] Bien, pero no sólo la queremos quitar, también la
queremosponer.
[Manager] Ah. Eso no está especificado en los requisitos
iniciales, así que lo consideraremos funcionalidad extra y lo
cobraremos por separado.
Afortunadamente los interfaces están muy limpios, así que
podremos modificar la capa externa sin impacto en el kernel
Proyecto Bicicleta
[Cliente] Otra cuestión, ¿dónde están el contacto y la llave?
Cualquiera podría robarnos el Porsche.
[Manager]Hemos optado por el modelo multiusuario para
la implementación inicial, pero podemos añadir un módulo
de seguridad al sistema.
Proyecto Bicicleta
[Cliente] Sólo dos incidencias más. Se requiere demasiado
esfuerzo al usuario para completar tareas con el sistema.
¿Podrías cambiar los pedales por un motor?
[Manager] En principio queríamos dar la máxima libertad de
acción al usuario, por lo quehemos optado por un modelo
de cliente pesado.
Proyecto Bicicleta
[Cliente] Bien, pero consideramos excesiva la cantidad de
trabajo que se deja al usuario.
[Manager] Podemos llegar a un compromiso razonable
entre la libertad del usuario y la automatización de
procesos. Sustituiremos el motor de giro asistido por
pedales por uno compatible asistido por pistones.
Quizá requiera añadir un módulo dealmacenamiento
externo para combustible, pero siempre lo podríamos
poner en la cesta
Proyecto Bicicleta
[Cliente] La última: el sistema no ha superado las pruebas
de rendimiento.
En los requisitos consta que el sistema debe alcanzar los
doscientos por hora.
[Manager] El rendimiento siempre puede variar
dependiendo de la plataforma.
Las especificaciones de este sistema son “carretera de hielo
con un70% de pendiente descendiente”.
Requisitos de Software
Perfil del requisito de software
Funcionales
No funcionales
Restricciones de la solución
Requisitos de calidad – Cualidad Sistémica
Fiabilidad
Usabilidad
Eficiencia
Mantenibilidad
Portabilidad
Atributos de calidad y
especificación
Atributos de Especificación
Identificador
Nombre
Versión
Autor / Fuente
Especificación
Propiedad de ejecución, validaciones y condiciones de error
Prioridad
Complejidad
Atributos de calidad y
especificación
Condiciones de escritura
Usar de manera estándar una frase común para expresar
Requisito
RFN: (El sistema deberá o debe permitir)
RNF: (El sistema contará con…(propiedades sistémicas))
RIN: (El sistema almacenará información correspondiente a…enconcreto…)
Regla de Negocio (Si, …, entonces… Sino, entonces…)
Validación (El sistema debe validar…)
Condiciones de Error (Cuando … ocurra, el sistema debe…)
Atributos de calidad y
especificación
Condiciones de escritura
Formato de especificación
Atributos
Propiedades
Facilidad de Escritura
Facilidad de Lectura - Comprensión
Facilidad de Relacionamiento entre requisitos
p.e.Dependencia
p.e. Agrupación
Facilidad de Análisis
Facilidad de Evaluación
Atributos de calidad y
especificación
Uso del español
Composición de las frases (orden de las cosas)
Identificación de sustantivos y sus relaciones
Identificación de verbos
Identificación de adjetivos
Vocabulario común (simple)
Minimizar “adornos”
El mismo vocabulario…la misma palabra siempre que...
Regístrate para leer el documento completo.