Está en la página 1de 4

Factores de calidad y productividad

Basili y Zelkowitz [BAS78] definen cinco factores importantes que inciden en


la productividad del software:

Factores humanos: El tamao y la experiencia de la organizacin


de desarrollo.
Factores del problema: La complejidad del problema que se debe
resolve y el nmero de cambios en las restricciones o los requisitos
del diseo.
Factores del proceso: Tcnicas del anlisis y diseo qu se utilizan,
lenguajes y herramientas CASE y tcnicas de revisin.
Factores del producto: Fiabilidad y rendimiento del sistema basado
en computadora.
Factores del recurso: Disponibilidad de herramientas CASE, y
recursos (hardware y software).

Si uno de los factores de productividad est por encima de la media (altamente


favorable) para un proyecto dado, la productividad de desarrollo del software ser
significativamente ms alta que el mismo factor por debajo de la media
(desfavorable).
En el libro de Ingenieria de software de Richard Fairley. Menciona algunos
factores que influyen sobre la calidad y productividad la cual se muestra en la
siguiente tabla.
METRICAS PARA LA CALIDAD DEL SOFTWARE: El objetivo primordial
de la ingeniera del software es producir un sistema, aplicacin o producto de alta
calidad. Para lograr este objetivo, los ingenieros de software deben aplicar
mtodos efectivos junto con herramientas modernas dentro del contexto de un
proceso maduro de desarrollo del software. Adems, un buen ingeniero del
software (y buenos gestores de la ingeniera del software) deben medir si la alta
calidad se va a llevar acabo.
La calidad de un sistema, aplicacin o producto es tan bueno como los
requisitos que describen el problema, el diseo que modela la solucin, el cdigo
que conduce a un programa ejecutable y las pruebas que ejercitan el software
para detectar errores. Un buen ingeniero del software utiliza mediciones que
evalan la calidad del anlisis y los modelos de diseo, el cdigo fuente y los
casos de prueba que se han creado al aplicar la ingeniera del software. Para
lograr esta evaluacin de la calidad, el ingeniero debe utilizar medidas tcnicas
que
evalan
la
calidad
con
objetividad,
no
con
subjetividad.
El gestor de proyectos tambin debe evaluar la calidad objetivamente, y no
subjetivamente. A medida que el proyecto progresa el gestor del proyecto tambin
debe evaluar la calidad. Las mtricas privadas recopiladas por ingenieros del

software se asimilan para proporcionar resultados en los proyectos. Aunque se


pueden recopilar muchas medidas de calidad, el primer objetivo en el proyecto es
medir errores y defectos. Las mtricas que provienen de estas medidas
proporcionan una indicacin de la efectividad de las actividades de control y de la
garanta de calidad en grupos o en particulares.
Los errores detectados por hora de revisin y los errores detectados por
hora de prueba proporcionan una visin profunda de la eficacia de cada una de las
actividades implicadas en la mtrica. Los datos de errores tambin se pueden
utilizar para calcular la eficiencia de eliminacin de defectos en cada una de las
actividades del marco de trabajo del proceso.

Visin general de los factores que afectan a la calidad: En las dos


dcadas pasadas, McCall y Cavano [MCC78] definieron un juego de factores de
calidad como los primeros pasos hacia el desarrollo de mtricas de la calidad del
software. Estos factores evalan el software desde tres puntos de vista distintos:

Operacin del producto (utilizndolo).


Revisin del producto (cambindolo).
Transicin del producto (modificndolo para que funcione en un
entorno diferente, p. ej.: portndolo). Los autores, en su trabajo,
describen la relacin entre estos factores de calidad (lo que llaman
un marco de trabajo ) y otros aspectos del proceso de ingeniera
del software:

En primer lugar, el marco de trabajo proporciona un mecanismo para que el


gestor del proyecto identifique lo que considera importante. Estas cualidades son
atributos del software, adems de su correccin y rendimiento funcional, que tiene
implicaciones en el ciclo de vida. En otros factores, como son facilidad de
mantenimiento y transportabilidad, se ha demostrado que tienen un impacto
significativo en el costo del ciclo de vida...
En segundo lugar, el marco de trabajo proporciona un medio de evaluar
cuantitativamente lo bien que va progresando el desarrollo en relacin con los
objetivos de calidad establecidos.
En tercer lugar, el marco de trabajo proporciona ms interaccin del
personal de QA en el esfuerzo de desarrollo...
Por ltimo, el personal de garanta de calidad puede utilizar indicaciones de
calidad pobre para ayudar a identificar estndares [mejores] a contrastar en el
futuro.

Es interesante destacar que casi todos los aspectos del clculo han sufrido
cambios radicales con el paso de los aos desde que McCall y Cavano hicieron su
trabajo, con gran influencia, en 1978. Pero los atributos que proporcionan una
indicacin de la calidad del software siguen siendo los mismos.
Qu significa esto? Si una organizacin de software adopta un juego de factores
de calidad como una lista de comprobacin para evaluar la calidad del software,
es probable que el software construido hoy siga exhibiendo la buena calidad
dentro de las primeras dcadas del siglo veintiuno. Incluso, cuando las
arquitecturas de clculo sufren cambios radicales (como seguramente ocurrir), el
software que exhibe alta calidad en operacin, transicin y revisin continuar
sirviendo tambin a sus usuarios.
Medida de la calidad: Aunque hay muchas medidas de la calidad de software, la
correccin, facilidad de mantenimiento integral y facilidad de uso proporcionan
indicadores tiles para el equipo del proyecto. Gilb [GIL88j sugiere definiciones y
medidas para cada uno de ellos.
Correccin: Un programa debe operar correctamente o proporcionar poco valor
a sus usuarios. La correccin es el grado en el que el software lleva a cabo su
funcin requerida. La medida ms comn de correccin son los defectos por
KLDC, en donde un defecto se define como una falta verificada de conformidad
con los requisitos
Facilidad de mantenimiento: El mantenimiento del software cuenta con ms
esfuerzo que cualquier otra actividad de ingeniera del software. La facilidad de
mantenimiento es la facilidad con la que se puede corregir un programa si se
encuentra un error, se puede adaptar si su entorno cambia, o mejorar si el cliente
desea un cambio de requisitos. No hay forma de medir directamente la facilidad de
mantenimiento; por consiguiente, se deben utilizar medidas indirectas. Una simple
mtrica orientada al tiempo es el tiempo medio de cambio (TMC), es decir, el
tiempo que se tarda en analizar la peticin de cambio, en disear. una
modificacin adecuada, en implementar el cambio, en probarlo y en distribuir el
cambio a todos los usuarios. Como media, los programas que son ms fciles de
mantener tendrn un TMC ms bajo (para tipos equivalentes de cambios) que los
programas que son ms difciles de mantener.

Hitachi [TAJ81 ] ha utilizado una mtrica orientada al costo para la capacidad de


mantenimiento llamada desperdicios, el costo en corregir defectos encontrados
despus de haber distribuido el software a sus usuarios finales. Cuando la
proporcin de desperdicios en el costo global del proyecto (para muchos
proyectos) se representa como una funcin del tiempo, el gestor puede determinar
si la facilidad de mantenimiento total del software producido por una organizacin
de desarrollo est mejorando. Se pueden emprender acciones a partir de las
conclusiones obtenidas de esa informacin.

Integridad: En esta poca de intrusos info rmticos y de virus, la integridad del


software ha llegado a tener mucha importancia. Este atributo mide la habilidad de
un sistema para resistir ataques (tanto accidentales como intencionados) contra su
seguridad. El ataque se puede realizar en cualquiera de los tres componentes del
software: programas, datos y documentos.
Para medir la integridad, se tienen que definir dos atributos adicionales: amenaza
y seguridad. Amenaza es la probabilidad (que se puede estimar o deducir de la
evidencia emprica) de que un ataque de un tipo determinado ocurra en un tiempo
determinado. La seguridad es la probabilidad (que se puede estimar o deducir de
la evidencia emprica) de que se pueda repeler el ataque de un tipo determinado.
La integridad del sistema se puede definir como:

integridad = E [1- amenaza x (1- seguridad)]


donde se suman la amenaza y la seguridad para cada tipo de ataque.
Facilidad de uso: El calificativo amigable con el usuario se ha convertido en
omnipresente en las discusiones sobre productos de software. Si un programa no
es amigable con el usuario, frecuentemente est abocado al fracaso, incluso
aunque las funciones que realice sean valiosas. La facilidad de uso es un intento
de cuantificar lo amigable que puede ser con el usuariO y se puede medir en
funcin de cuatro caractersticas:

habilidad intelectual y/o fsica requerida para aprender el sistema.


el tiempo requerido para llegar a ser moderadamente eficiente en el
uso del sistema.
aumento neto en productividad (sobre el enfoque que el sistema
reemplaza) medida cuando alguien utiliza el sistema moderadamente
y eficientemente.
valoracin subjetiva (a veces obtenida mediante un cuestionario) de la
disposicin de los usuarios hacia el sistema.

También podría gustarte