Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
Los requerimientos no funcionales son los que especifican criterios para evaluar la operación
de un servicio de tecnología de información, en contraste con los requerimientos funcionales
que especifican los comportamientos específicos de las aplicaciones.
Para poder identificar estas características durante la ingeniería de requisitos que realizan los
Analistas de sistemas e Ingenieros de software en todo proyecto de desarrollo, es útil contar
con una clasificación que nos establezca un marco de los tipos de requerimientos funcionales
con que nos podemos encontrar.
> Requerimientos no funcionales:
Ejemplos
Clasificaciones varias de requerimientos no
funcionales
Existen diversas fuentes o marcos de referencia para clasificar los requerimientos no
funcionales, de hecho, existe un estándar de la IEEE, Std 830 – 1993 que establece 13 tipos de
requerimientos no funcionales que deberían incluirse en toda especificación de software.
Otro modelo es el propuesto por Jacobson (1999) en el cuales e propone para el Unified
Process.
Uno de los modelos más difundidos es el establecido por Somerville, que presentaremos más
adelante en el artículo.
La clasificación de requerimientos no
funcionales de Somerville
La figura presenta la clasificación de requerimientos no funcionales definida por Somerville.
Somerville divide los requerimientos no funcionales en tres grandes tipos: Requerimientos de
producto, requerimientos organizacionales y requerimientos externos.
Algunos de estos requerimientos pueden ser fáciles de cuantificar, por ejemplo el desempeño y
la confiabilidad, pero otros son más difíciles como por ejemplo usabilidad y adaptabilidad.
Este tipo de requerimientos incluyen limitaciones de índole económica, como por ejemplo
el presupuesto del proyecto de software, interacción o necesidad del sistema de inter-operar
con otros sistemas, requerimientos regulatorios en el área de salud, seguridad industrial o
protección de datos, requerimientos legales concernientes con licencias, regulaciones o
certificaciones que necesita el producto según la industria en el que se desempeñe, entre otros.
Una de las secciones del libro, describen los errores clásico al tratar de acelerar (o hacer
Fastrack) de los proyectos, prácticas de desarrollo de software que son seleccionadas con
tanta frecuencia y con los mismos malos resultados predecibles, que merecen ser llamadas
“clásicos”, y que siguen estando muy vigentes a pesar que la obra se público hace 17 años.
¿Algunas de estas prácticas erróneas le son familiares?, por ejemplo, ¿Qué hacemos si un
proyecto está retrasado?, ¿incorporamos más gente?, ¿que hacemos si algún integrante está
dañando la productividad del equipo?, ¿esperamos hasta el final del proyecto para despedirle?,
o ¿que haría si le han asignado un proyecto agresivo en fecha?, ¿reclutar a todos
desarrolladores disponibles (inclusive si son novatos) e iniciar lo antes posible sin
planificación?.
A continuación dejamos la lista, si conoces algún error clásico que no esté incluido, te invitamos
a dejar un comentario.
Los Desarrolladores, Gerentes y Clientes usualmente tienen buenas razones para tomar las
decisiones que toman, pero estos errores clásicos se han cometido con tanta frecuencia que
hoy en día sus consecuencias son fáciles de predecir, y la experiencia ha demostrado que lejos
de mejorar la situación, tienden a agravarla.
25. Omitir tareas
esenciales en las
estimaciones.
26. Planificar para
recuperar el retraso
después.
27. Programación alocada
(Code Like Hell).
Planear
Consiste en:
Permite:
Evita:
Hacer
Consiste en:
Preparar el Lugar
Comenzar la reunión
Conducir la reunión
Cerrar la reunión
Permite:
Evita:
Revisar
Asignar tareas
Publicar documentación
Permite:
Evita:
Falta de acuerdos
Corregir
Consiste en:
Permite:
Evita:
Repetir Errores
Bibliografia