Escrito en Software, Tecnología | Etiquetas:Software
Hacemos actividades para mejorar la calidad del software que generamos, sin embargo sobre el re-trabajo, el esfuerzo que le dedicamos a corregir errores, no hacemos mucho. El re-trabajo es uno de los mayores problemas del desarrollo de software y que consume mucho del presupuesto, pero la mayoría de las organizaciones no le pone atención. Una de las razones es que frecuentemente estos costos quedan mezclados entre todas las actividades de los proyectos, las agendas y los cambios.
Es común que las organizaciones de software no midan cual es su re-trabajo. El problema radica principalmente en que no tienen forma de conocer y controlar el esfuerzo que le dedica cada integrante al desarrollo o a las correcciones, ni tampoco el tipo de trabajo se esta haciendo, ambos necesarios para tener datos con los cuales trabajar.
¿Que cantidad de defectos inyectamos en el proceso de desarrollo y de que tipo?, ¿Cuándo se inyectaron?, ¿Cuál es el costo de estos defectos que estamos inyectando, en su identificación y corrección?, ¿Cuál es el costo de los defectos que aparecen en producción?, ¿Qué tantas liberaciones se hacen para corregir errores?
Si contáramos con información, podríamos tomar acciones encaminadas a disminuir los defectos, mejorar la calidad y la productividad, sin ellos, solo estamos trabajando a prueba y error, y muy probablemente, no usando los recursos eficientemente.
Escrito en CMMI, Mejora, Procesos | Etiquetas:Mejora Procesos
Si hablamos de competitividad no puede ser que teniendo un vecino líder en tecnología no la podamos aprovechar, ya sea para venderle a el o tomar conocimiento para venderle igual que el al resto del mundo.
Con los impuestos que están en camino de aprobarse damos un paso hacia atrás hacia ese objetivo. ¿Cómo estamos en el mundo con Internet?, no muy bien posicionados y caros, y si a eso le agregamos el impuesto del 3%, todavía será mas. caro. Ver reporte de GIZMODO.
A medida que una organización de desarrollo de software va evolucionando hacia una organización más madura, el conocimiento de lo que este sucediendo en la organización es más importante. Las mediciones del software ayudan al conocimiento de la organización y a mejorar el trabajo que se hace, sin embargo, un programa de métricas mal enfocado puede presionar a la organización y perder terreno en lo que se había logrado antes de implementarlo.
Las métricas deben de ser un medio de comunicación entre lo que la gerencia esta buscando y lo que la organización esta produciendo, y no debe ser del interés de solo una persona, grupo o departamento, es algo que debe de ser interés de todos y apoyado por todos.
Las mediciones no nos proveen soluciones por si mismas, estas son índices cuantificables que pueden ser utilizados para comparar productos de software, procesos o proyectos, para predecir los resultados, o para comprender el proceso de desarrollo de software. Basados en estas deberemos crear acciones, programas e iniciativas para corregir o mejorar lo que esta sucediendo o prevenir que suceda algo en particular en el futuro.
Si desea implementar algún programa de métricas debe tener en cuenta algunas reglas básicas para obtener mejores resultados.
Recuerde que nada se puede mejorar si no se mide, de que otra forma podemos saber donde estábamos y donde ha quedado todo ese esfuerzo que hemos dedicado.
Escrito en Estimación, Mejora, Métricas, Procesos | Etiquetas:Métricas
El PSP / TSP (Personal Software Process / Team Software Process) es un modelo que es utilizado para aumentar la calidad de los productos de software a través de un equipo disciplinado y autodirigido. A diferencia de otros modelos, el PSP se implementa a nivel personal, para después integrase las actividades en el equipo de trabajo TSP, que a su vez se puede integrar al modelo de calidad de la organización como CMMI o Moprosoft.
Ventajas: Entre las ventajas a destacar de este modelo podemos mencionar la mejora la productividad de las personas, mejora en los hábitos de programación, se puede lograr una detección temprana de defectos y riesgos lo que deriva en una disminución de los defectos, una mejora en la calidad, y por lo tanto, una reducción en el ciclo de vida. Se trabaja con un plan con una base de estimación mas certera al ser realizada por el equipo; se logra una buena comunicación entre los integrantes.
Desventajas: Las desventajas de este modelo es que es necesario que cada uno de los miembros tiene que tener el compromiso y la disciplina de seguir el plan. Debe de llenar toda la documentación requerida que incluye sus registros, planificación, las plantillas o formularios. Se debe de contar con un buen conjunto de métricas y parámetros de calidad, lo cual, para algunas organizaciones, puede ser difícil de definir. Cada miembro debe de estar entrenado en el PSP, si algún miembro se va, es necesario entrenar a los nuevos miembros. Algo que puede resultar una desventaja importante es que la Gerencia debe de dejar trabajar a los equipos de trabajo autodirigidos de acuerdo a sus planes, algo que no muchos resisten.
Como todo modelo para obtener los beneficios que se plantean es necesario seguirlo, y en base a los resultados que se obtengan, hacer los ajustes para la organización sin perder la esencia.
Escrito en Calidad, Ingeniería de Software, TSP / PSP
Definir lo que es la Calidad siempre ha sido complicado, ya que se puede ver afectada por quién la evalúa y así como el contexto en el que se está evaluando, por lo que ocuparnos de algo que no podemos definir puede resultar complejo. El hecho es que algo debemos de hacer con lo que estamos haciendo, nuestro producto o servicio, para que se mantenga en el mercado satisfaciendo una necesidad, y en el mejor de los casos, creciendo.
Para poder ocuparnos de la calidad primero tenemos que definir lo que es calidad para nuestra organización, y lo que queremos que sea para nuestros clientes en función de sus necesidades y expectativas en relación a lo que ofrecemos. Después debemos ver que la calidad que queremos se vea reflejada en nuestros productos o servicios a través de ciertas características o atributos.
Ocupándonos de la calidad de nuestros productos y servicios permitirá a nuestro negocio:
Ser más competitivo – Si lo que hacemos lo hacemos de manera más efectiva y eficiente tendremos espacio para poder competir con otras empresas que tienen productos similares pero con procesos inmaduros. Dado que conocemos nuestro producto y nuestros procesos son maduros, podremos rápidamente cambiar las características del producto para poder adaptarnos a las nuevas condiciones.
Poder sobrevivir – Si tenemos un buen producto, lo será hasta que llegue la competencia, y más, si no estamos preparados para reaccionar a tiempo. Un programa de calidad nos permite trabajar de la mejor manera con menos desperdicio, costos menores, más eficiencia, más productividad, gente capacitada.
Entrar en el mercado internacional – Tal vez no es nuestro sueño como empresa, pero como resultado de la globalización, tenemos que estar preparados para competir en otros mercados o bien para hacer frente a los nuevos competidores que se establezcan en nuestra región.
Tener un mejor equilibrio costo-efectividad – No siempre podremos competir con precio, así que es mejor tener un programa de calidad que nos ayude a reducir costos y a ser más eficientes, a utilizar mejor nuestros recursos.
Retener clientes – Al entregar productos que cumplen con las características que vendemos, que satisfagan las necesidades para lo cual fueron creados, tendremos a mas clientes regresando por más productos y no mas clientes devolviendo el producto
De manera interna generamos un mejor ambiente de trabajo al estar más organizados y mejor comunicados, en donde cada quien sabe cual es su participación dentro del proceso para entregar un producto o servicio al cliente.
Escrito en Calidad, Mejora, Procesos | Etiquetas:calidad procesos
Hablemos ahora de algunos de los beneficios que tiene el uso del CMMI cuando es implementado y seguido por la organización, mas allá de contar con una evaluación sobre el modelo.
Si bien se mencionan ya por allí algunos beneficios por el uso de este modelo, estos son algunos de los beneficios que yo destacaría y que he visto en la práctica en la implementación del mismo en diferentes empresas.
Estos beneficios no se dan de la noche a la mañana, existen algunos que se manifestarán en forma más temprana que otros. También depende de la forma de la implementación y cual sea el foco, lo que siempre es cierto es que cuesta trabajo dar los primeros pasos y tener la disciplina de mantenerse en el camino.
Escrito en CMMI, Calidad, Mejora, cambio | Etiquetas:CMMI Calidad
Por allí hay existe una frase que es muy real “In God we trust – all others bring data!”, en Dios confiamos – todos los demás traigan datos. Cuando llega a una organización rápidamente puede saber, por lo que ve y escucha, si tienen procesos establecidos y como se trabaja, si hablan con indicadores, o con el cómo van, que te dijo, que hicieron. Si no se encuentran métricas muy seguramente trabajan en la prueba y error, en el día a día y no tienen un buen conocimiento del estado de sus proyectos y de su organización
Para contar con una base de métricas es estrictamente necesario tener algún tipo de proceso en ejecución, tener algunas tareas en forma estandarizada, si no, no es posible obtener la información necesaria para generar indicadores en forma consistente. Si solo se tienen métricas de defectos de pruebas sabremos que al menos realizan algún tipo de pruebas, si se categorizan, sabemos que pueden identificar que tipos de defectos están cometiendo más seguido y los pueden prevenir.
Existen organizaciones que trabajan sin tener una sola métrica, solo saben si el proyecto va bien o mal en función de la relación con el cliente, si el trabajo que falta se puede completar antes de la fecha de entrega, o si no tienen problemas mayores, de otra forma no se enteran de nada hasta que el cliente les rechaza o se queja.
Generalmente la operación del día a día no permite ver la realidad de la organización, si no tenemos un sistema de indicadores no podemos tomar acciones correctivas a tiempo. En epocas de bonzanza la cantidad de proyectos hace que se oculten muchos problemas, los proyectos buenos sacan adelante a los malos, pero en epocas de poco trabajo tenemos que pagar todas las ineficiencias.
De acuerdo a las noticias del SEI se lanzó una convocatoria para las pruebas piloto del CMMI versión 1.3, la cual estará disponible para Noviembre del 2010. Este piloto incluye los modelos CMMI for Development (CMMI-DEV), CMMI for Acquisition (CMMI-ACQ), y CMMI for Services (CMMI-SVC)