Está en la página 1de 8

Condiciones de trabajo en el desarrollo de software

El desarrollo de software no es una tarea fcil. Prueba de ello es que existen numerosas
propuestas metodolgicas que inciden en distintas dimensiones del proceso de desarrollo. Por
una parte tenemos aquellas propuestas ms tradicionales que se centran especialmente en el
control del proceso, estableciendo rigurosamente las actividades involucradas, los artefactos que
se deben producir, y las herramientas y notaciones que se usarn. Estas propuestas han
demostrado ser efectivas y necesarias en un gran nmero de proyectos, pero tambin han
presentado problemas en otros muchos. Una posible mejora es incluir en los procesos de
desarrollo ms actividades, ms artefactos y ms restricciones, basndose en los puntos dbiles
detectados. Sin embargo, el resultado final sera un proceso de desarrollo ms complejo que
puede incluso limitar la propia habilidad del equipo para llevar a cabo el proyecto. Otra
aproximacin es centrarse en otras dimensiones, como por ejemplo el factor humano o el
producto software. Esta es la filosofa de las metodologas giles, las cuales dan mayor valor al
individuo, a la colaboracin con el cliente y al desarrollo incremental del software con iteraciones
muy cortas. Este enfoque est mostrando su efectividad en proyectos con requisitos muy
cambiantes y cuando se exige reducir drsticamente los tiempos de desarrollo pero manteniendo
una alta calidad. Las metodologas giles estn revolucionando la manera de producir software, y
a la vez generando un amplio debate entre sus seguidores y quienes por escepticismo o
convencimiento no las ven como alternativa para las metodologas tradicionales. En este trabajo
se presenta resumidamente el contexto en el que surgen las metodologas giles, sus valores,
principios y comparaciones con las metodologas tradicionales. Adems se describe con mayor
detalle Programacin Extrema (eXtreme Programming, XP) la metodologa gil ms popular en la
actualidad.
Roles Aunque en otras fuentes de informacin aparecen algunas variaciones y extensiones de
roles XP, en este apartado describiremos los roles de acuerdo con la propuesta original de Beck.
Programador El programador escribe las pruebas unitarias y produce el cdigo del sistema.
Debe existir una comunicacin y coordinacin adecuada entre los programadores y otros
miembros del equipo.
Cliente El cliente escribe las historias de usuario y las pruebas funcionales para validar su
implementacin. Adems, asigna la prioridad a las historias de usuario y decide cules se
implementan en cada iteracin centrndose en aportar mayor valor al negocio. El cliente es slo
uno dentro del proyecto pero puede corresponder a un interlocutor que est representando a
varias personas que se vern afectadas por el sistema.
Encargado de pruebas (Tester) El encargado de pruebas ayuda al cliente a escribir las
pruebas funcionales. Ejecuta las pruebas regularmente, difunde los resultados en el equipo y es
responsable de las herramientas de soporte para pruebas.
Encargado de seguimiento (Tracker) El encargado de seguimiento proporciona
realimentacin al equipo en el proceso XP. Su responsabilidad es verificar el grado de acierto
entre las estimaciones realizadas y el tiempo real dedicado, comunicando los resultados para
mejorar futuras estimaciones. Tambin realiza el seguimiento del progreso de cada iteracin y
evala si los objetivos son alcanzables con las restricciones de tiempo y recursos presentes.
Determina cundo es necesario realizar algn cambio para lograr los objetivos de cada iteracin.
Entrenador (Coach) Es responsable del proceso global. Es necesario que conozca a fondo el
proceso XP para proveer guas a los miembros del equipo de forma que se apliquen las prcticas
XP y se siga el proceso correctamente.

Consultor Es un miembro externo del equipo con un conocimiento especfico en algn tema
necesario para el proyecto. Gua al equipo para resolver un problema especfico.
Gestor (Big boss) Es el vnculo entre clientes y programadores, ayuda a que el equipo trabaje
efectivamente creando las condiciones adecuadas. Su labor esencial es de coordinacin.

Mtricas del Software


La medicin es fundamental para cualquier disciplina de ingeniera, y la ingeniera del Software
no es una excepcin.
Las mtricas del Software se refieren a un amplio elenco de medidas para el Software de
computadora. La medicin se puede aplicar al proceso de Software con el intento de mejorarlo
sobre una base continua.
Podemos definir las Mtricas de Software o Medidas de Software como:
La aplicacin continua de tcnicas basadas en las medidas de los procesos de desarrollo de
Software y sus productos, para producir una informacin de gestin significativa y a tiempo. Esta
informacin se utilizar para mejorar esos procesos y los productos que se obtienen de ellos.
Las Mtricas de Software implican medir: medir involucra nmeros; el uso de nmeros para
hacer cosas mejor. Las Mtricas de Software pretenden mejorar los procesos de desarrollo de
Software y mejorar, por tanto, todos los aspectos de la gestin de aquellos procesos.
Estas medidas son aplicables a todo el ciclo de vida del desarrollo, desde la iniciacin, cuando
debemos estimar los costos, al seguimiento y control de la fiabilidad de los productos finales, y a
la forma en que los productos cambian a travs del tiempo debido a la aplicacin de mejoras.
Las medidas del Software y los modelos de medida son entonces tiles para estimar y predecir
costos y para medir la productividad y la calidad del producto. Un ingeniero del Software recopila
medidas y desarrolla mtricas para obtener indicadores.
reas de Aplicacin
Algunas de las reas donde se aplican las mtricas de Software son:
El control de proyectos de desarrollo de Software a travs de medidas en un rea que esta
generando un gran inters. Este es un tema que ha alcanzado un inters relevante con el
incremento de contratos a precio fijo para desarrollar un producto Software y la utilizacin de
clusulas de penalizacin en los mismos en caso de retrasos, sobrecostos, etc.
La prediccin de los niveles de calidad del Software, a menudo en trminos de fiabilidad, es
otra rea en que las Mtricas de Software tiene un importante papel que jugar.
El uso de las Mtricas de Software es proporcionar una verificacin cuantitativa del diseo
de software es otra rea bien definida. Estas Mtricas no se van a estudiar en esta Unidad si no
en la Unidad de Diseo.

Recientemente se ha estudiado el efecto de los factores del entorno en la eficacia de los


procesos de desarrollo. Esta opcin no esta abierta para todas las organizaciones, pero existe
una gran preocupacin sobre como incrementar la productividad de los procesos de desarrollo
introduciendo cambios en el entorno en el cual aquellos tienen lugar. Las medidas pueden ser
utilizadas para identificar donde deberan concentrarse los cambios.
La utilizacin de las Mtricas para comprar unas organizaciones con otras es un rea de
aplicacin muy importante. CSC- Index en Europa y el Software Engineering Institute en E.E.U.U.
ofrecen este tipo de servicios a la industria y muchas organizaciones los utilizan. Un resultado de
esta aplicacin es que se puede identificar que se esta haciendo mal y quin lo esta haciendo
bien y aprender de esas empresas.
Finalmente, el uso ms comn de las medidas de Software es la provisin de informacin de
gestin, que incluye datos acerca de la productividad, calidad y eficacia de los procesos.
El valor de esta informacin est en analizar los datos de las tendencias, da a da. Est
mejorando o empeorando la calidad de un equipo de desarrollo?. Si es as, por qu ocurre? qu
puede hacer la direccin para mejorar la situacin?
Caractersticas de las Mtricas de Software
La calidad de las medidas deberan facilitar el desarrollo de modelos que sean capaces de
predecir el comportamiento de determinados parmetros que afectan al desarrollo de productos
o procesos.
Una medida ideal debera ser :

Objetiva
Sencilla, definible con precisin para que puede ser evaluada
Fcilmente obtenible ( a costo razonable)
Valida, la mtrica debera medir exactamente lo que se quiere medir y no otra cosa.
Robusta. Debera de ser relativamente insensible a cambios poco insignificativos en el proceso o en el producto
.
Adems, para una mejor utilizacin de estas medidas, a la hora de realizar estudios analticos o
anlisis estadsticos deberan de tener unos valores que se ajusten a una cierta escala de
medida.
Clasificacin de las Mtricas de Software
Las Mtricas de Software se pueden clasificar, de una manera general. En Mtricas de producto y
Mtricas de proceso.
Las Mtricas de Producto son medidas de producto Software durante cualquier fase de su
desarrollo desde los requisitos hasta la instalacin.
Las Mtricas de Producto pueden medir la complejidad del diseo, el tamao del producto final
(fuente u objeto) o el nmero de pginas de documentacin producida.
Las Mtricas de Proceso son medidas del proceso de desarrollo del Software tales como
tiempo de desarrollo total, esfuerzo en das/ hombre o mes / hombre de desarrollo del producto,
tipo de metodologa utilizada o nivel medio de experiencia de los programadores.

Planificacin de las actividades de control de calidad de un


proyecto de desarrollo

El plan de calidad se centra en detallar las normas de calidad para el proyecto y los criterios de
calidad que se utilizan para medir y determinar si los resultados son los esperados, adems de
crear y documentar un plan para cumplir con esas normas.
Dicho proceso, que se efecta durante la fase de planificacin del proyecto, est basado en la
poltica de calidad de la organizacin y tendr por objeto desarrollar un plan que determine:

Los estndares, normas de calidad y regulaciones que afectan a nuestro proyecto

Los estndares que debern desarrollarse especficamente para nuestro proyecto

La manera de asegurar la conformidad con dichos estndares

Los procesos y planes de mejora continua

Las mtricas que se utilizarn para medir los resultados del proyecto

Los procesos que se utilizaran para aplicar dichas mtricas

El grado de calidad del producto y cualidades que deben ser posedas por los entregables
del proyecto

Proceso de Planificacin de calidad


Para llegar a determinar todos los aspectos de calidad del proyecto, no solamente deben
centrarse los esfuerzos en el control y la verificacin, sino que debe seguirse un proceso
orientado a determinar cmo dicha verificacin es llevada a cabo, procesada y transmitida:
1. Determinar qu debe ser sometido a verificacin y control
Generalmente sern los entregables. Cualquier entregable importante debe ser sometido a cierto
control de calidad, entendindose por entregable importante aquel que forme parte del resultado
final del proyecto.
2. Establecer la manera ms adecuada de efectuar el control
Si el resultado final es un entregable que debe cumplir un estndar, el control de calidad debera
centrarse en el cumplimiento de dicho estndar, asegurndose esto mediante una auditora.
3. Desarrollar la programacin de las actividades de calidad
La mayora actividades de calidad se realizan justo antes de completar el entregable, aunque si
los plazos de desarrollo son lo suficientemente largos, deben programarse actividades
intermedias.
4. Determinar los interesados y participantes de las actividades de calidad
Obviamente, los responsables del entregable, pero tambin puede ser necesaria la participacin
de expertos, e incluso del cliente final del entregable, para asegurar un comn entendimiento de
la informacin suministrada.
5. Describir las herramientas y tcnicas de calidad que deben ser utilizadas
Las herramientas y tcnicas utilizadas garantizarn que se contemplan todos los aspectos del
proyecto, y no solo los aspectos importantes, no dispersando los esfuerzos y la atencin de los
miembros del equipo.
Herramientas y Tcnicas

Si bien existe gran cantidad de propuestos de diferentes autores acerca de cmo desarrollar las
actividades de calidad, mencionaremos aquellas especificadas en el PMBOK por ser las ms
representativas en el desarrollo de proyectos. Como bien se especifica en dicho estndar, existen
muchas otras que pueden ser tiles para cierto tipo de proyectos o en determinadas reas de
aplicacin.
Anlisis Coste-Beneficio
Estudio para determinar el coste total de los gastos previstos de implementacin de los
requerimientos y planes de calidad, comparndolos con los costes de la NO CALIDAD derivados
de la no implementacin de dichos planes:

Mayor reproceso

Menor productividad

Mayores costes de garanta

Menor satisfaccin del cliente

Retrasos

Coste de la Calidad (COQ)


El coste de la calidad se refiere a la suma de todos los costes de la vida del producto realizados
para asegurar el cumplimiento de los requerimientos:
Formacin

Equipos

Documentacin

Tiempo de los procesos

Tambin los costes derivados de incumplir dichos requerimientos

Costes de reproceso por no cumplir con los requisitos

Garantas

Los costes de incumplir los requerimientos pueden ser

Internos: fallos encontrados por el equipo del proyecto

Externos fallos encontrados por el cliente

Diagramas de Control
Se utilizan para visualizar en una grfica el comportamiento de las caractersticas del producto a
lo largo del tiempo, para determinar si un proceso es estable o no, o si tiene unas caractersticas
uniformes y predecibles.
Con ello podremos identificar si la magnitud observada se encentra dentro de los mrgenes de
medida preestablecidos., o bien identificar el momento en que se produce una disconformidad
con dichos mrgenes. En procesos continuos, como por ejemplo un sistema de produccin, no se
observan todos los productos o eventos, sino que peridicamente se selecciona una muestra de
la produccin actual.
En un diagrama de control podremos observar los lmites de las especificaciones superior e
inferior (valores mximo y mnimo permisibles), establecidos por lo general en 3 (99.73% de
las medidas dentro de los limites).

Hay diversos comportamientos en la medida del sistema que determinan que este se encuentra
fuera de control, hacindose necesario emprender acciones correctoras:

Unas medidas de datos exceden un lmite de control

Dos medidas consecutivas ms all de los lmites de advertencia (Habitualmente 2).

Siete medidas consecutivas o ms en el mismo lado de la media (por encima o por


debajo).

Cinco medidas consecutivas que entran en la misma direccin (indica una tendencia)

Estudios Comparativos (Benchmarking)


Utilizados para comparar las prcticas desarrolladas en proyectos anteriores con las establecidas
para el proyecto en curso.
Con ello generaremos ideas de mejora, y obtendremos una base con la que comparar la
coherencia del resultado de nuestras mediciones, efectuadas durante el proceso control de
calidad.
Diseo de Experimentos
Los modelos de diseo de experimentos (DOE) son modelos estadsticos que siguen una
metodologa basada en la experimentacin, con el objetivo de determinar qu factores influyen
en una variable determinada, adems de cuantificar dicha influencia.
Sus resultados seran:

Determinar la cantidad y el tipo de pruebas a efectuar

Obtener las ecuaciones de modelado del sistema a partir de sus factores

Identificar la influencia de cada uno de los factores en el proceso

Muestreo Estadstico
El muestreo estadstico consiste en seleccionar una parte de la poblacin para su inspeccin
para conseguir que los resultados de dicha muestra sean extrapolables al total de dicha
poblacin.
La frecuencia y el tamao de la muestra deben especificarse en el Plan de Calidad, anotando el
nmero de pruebas, los rechazos esperados, etc. Y tambin el coste de efectuar el muestreo.
Este proceso permite ahorrar recursos, y a la vez obtener resultados parecidos a los que se
alcanzaran si se realizase un estudio de toda la poblacin.
Diagramas de Flujo
Los diagramas de flujo son una manera de representar grficamente el flujo y la secuencia de
procesos a travs de los sistemas. Describen qu operaciones y en qu secuencia se requieren
para alcanzar un resultado o producto, ilustrando la secuencia de las operaciones que se
realizarn.
Los diagramas de flujo facilitan la comunicacin entre los involucrados en el proyecto, y permiten
la comprensin de problemas largos y complicados.
Metodologas Propietarias de Gestin de la Calidad
Existen diferentes metodologas de gestin de la calidad, desarrolladas por instituciones y

entidades privadas, que actualmente se consideran modelos de referencia en la gestin de la


calidad. Los principales son:

Six Sigma: metodologa de mejora de procesos, centrada en la reduccin de la


variabilidad de los mismos. La meta de 6 Sigma es llegar a un mximo de 3,4 defectos
por milln de unidades.

Lean Manufacturing: es una filosofa de gestin enfocada a la reduccin de los 7 tipos de


"desperdicios" (sobreproduccin, tiempo de espera, transporte, exceso de procesado,
inventario, movimiento y defectos) en productos manufacturados.

CMMI: es un modelo para la mejora y evaluacin de procesos para el desarrollo,


mantenimiento y operacin de sistemas de software.

Herramientas Adicionales de Planificacin de Calidad


En el desarrollo de los planes de calidad, no solo se utilizan elementos propios de la calidad, sino
que se recurre tambin a tcnicas ms propias de otros procesos y fases de la gestin de
proyectos:

Tormenta de ideas: herramienta de trabajo grupal que facilita el surgimiento de nuevas


ideas sobre un tema o problema determinado. La lluvia de ideas es una tcnica de grupo
para generar ideas originales en un ambiente relajado.

Diagramas de afinidad: forma de organizar la informacin reunida en sesiones de lluvia


de ideas.

Anlisis de campos de fuerzas: Ve el cambio como fuerzas diferentes y contrapuestas


que compiten entre s. Para propiciar el cambio hay que ver la relacin que existe entre
las dos.

Tcnicas de grupo nominal: tcnica empleada para facilitar la generacin de ideas y el


anlisis de problemas. Este anlisis se lleva a cabo de un modo altamente estructurado,
permitiendo que al final de la reunin se alcance un buen nmero de conclusiones sobre
las cuestiones planteadas.

Diagramas matriciales: es una representacin grfica de las relaciones existentes entre


diferentes tipos de factores y la intensidad de las mismas, en trminos cualitativos.

Matrices de priorizacin: es una herramienta que ayuda a comparar y escoger


racionalmente entre varias opciones, con base en unos criterios para fijar prioridades o
tomar una decisin.

Contenido del Plan de Calidad


El Plan de calidad del proyecto debe ser redactado con el objetivo de ofrecer un acceso fcil a los
requisitos de calidad.
La lista siguiente enumera los contenidos que deben incluirse en un plan de calidad detallado:

Responsabilidades de la gestin: describen las responsabilidades de calidad de todos los


interesados.

Sistema de calidad: documenta los procedimientos de calidad existentes que han sido
estandarizados y utilizados dentro de la organizacin.

Documentos de calidad: procedimientos para el mantenimiento de los registros de


calidad (mtricas, informes de variacin, listas de comprobacin etc.) durante la
ejecucin del proyecto y para despus de la finalizacin del mismo.

Control del diseo: procedimientos para la revisin del diseo, cambios de diseo y
exenciones de requisitos.

Control de la documentacin: proceso de control de la documentacin del proyecto en


cada fase del mismo.

Compras: requisitos de calidad para la subcontratacin de cualquier parte del proyecto.

Criterios de aceptacin: conjunto de criterios especficos y medibles, que el


usuario/cliente utilizar para verificar si el proyecto est completo y es correcto.
Constituirn la base para la firma de aceptacin del proyecto.

No conformidades: define los procedimientos para gestionar y solventar


inconformidades. Los procedimientos incluyen:
La definicin de responsabilidades
La definicin de las condiciones
La disponibilidad de la documentacin necesaria

Acciones correctivas: procedimientos para tomar acciones correctivas para los problemas
encontrados durante la ejecucin del proyecto.

Auditoras de calidad: se debe planificar e implementar una auditora interna durante


cada fase del proyecto.

Formacin: requisitos de capacitacin para el equipo del proyecto.

Excelencia del Plan de Calidad


El desarrollo de un plan de calidad es un proceso que debe desarrollarse en equipo, ya que su
xito depende tanto de la comunicacin de la informacin como de la planificacin de
actividades. Bajo esta premisa, el jefe de proyecto preparar los planes y acciones para
contrarrestar cualquier debilidad o deficiencia en la ejecucin del proyecto, asegurando as que
efectivamente cumplen todos los estndares de calidad.
El plan no slo debe ser una lista especfica y detallada de todas las normas de calidad y
requisitos, sino que tambin debera incluir todas las medidas adoptadas para garantizar que se
cumplan.

También podría gustarte