Reflexiones sobre gestión de la calidad
Un paso importante en la gestión de calidad son las pruebas. Las pruebas son un paso importante en el ciclo de vida del software y nos permiten ver si estamos haciendo buen software y si cumple las requisitos.
Existen estándares de calidad que nos dicen que tenemos que medir para saber si el software es de calidad
El mas conocido y usado es el iso 9126. Este describe las características que hayquee medir y también describe métricas y indicadores.
Sobre calidad del software vimos la mayoría de los aspectos que se pueden considerar durante la evaluación de un software ya que nos basamos en la iso 9126, en el tema de aseguramiento de la calidad existen varias herramientas a las que nos referimos en el curso junto con el control de la calidad del software, existieron muchas dudas sobre las certificaciones y para lo que servían dentro el ciclo de desarrollo o elaboración de un UPS siendo los factores que determinan la calidad los que significan significativamente los ejemplos de métricas de calidad.
En la correcta implementación según los requisitos planteados durante la implementación y ojala se pudiera trabajar con las nuevas aplicaciones de ups que están en la actualidad e incorporarlos sobre UPS reales para calificar el conocimiento dentro del mercado.
La Gestión de la Calidad de Software es un conjunto de actividades de la función general de la Dirección que determina la calidad, los objetivos y las responsabilidades.
El Blog del Software
domingo, 2 de diciembre de 2012
jueves, 18 de octubre de 2012
jueves, 4 de octubre de 2012
Compuware Dynatrace
Es un
APM (Application Performance
Management).
Contiene
herramientas que a través de distintas métricas permite medir el rendimiento y
la calidad de un programa en sus distintas áreas.
Dynatrace contiene
distintas versiones, entre ellas, de producción y de centro de testeo.
Entre sus características
están:
Automatización de tareas: Automatiza la tarea de documentación, el
load testing entre otros.
Reduce la cantidad de veces en que se
tiene que ejecutar una prueba: Dynatrace lleva un registro constante de los errores y logs y
quita la necesidad de correr de nuevo una prueba.
Entrega una interfaz amigable: La interfaz es fácil de entender y
muestra los datos de manera inteligente.
Detecta regresiones: Cuando se realiza un fix, detecta cuando
este afecta otra parte del código, comparando dos versiones del mismo programa.
Está orientado a ambientes web donde
existen clientes online.
Automatiza las configuraciones por tanto
reduce tiempos de entrega.
A
nivel de usuario: Entrega
estadísticas sobre la experiencia de uso del usuario. Genera datos de simulación
de todo tipo de usuario independiente el lugar geográfico.
A nivel de código:
Analiza todos los
caminos desde la maquina donde corre el código hasta la maquina del usuario.
Detecta host, maquinas
virtuales y transacciones, sin importar la complejidad del programa o el
ambiente donde se encuentra.
jueves, 30 de agosto de 2012
Test-driven development (TDD)
Test-driven development (TDD)
el TDD significa desarrollo guiado por pruebas. se trata de el desarrollo de aplicaciones pensando primero en las pruebas y implementando el codigo para que estas se cumplan. involucra principalmente 2 practicas el software testing y el refactoring.
el TDD significa desarrollo guiado por pruebas. se trata de el desarrollo de aplicaciones pensando primero en las pruebas y implementando el codigo para que estas se cumplan. involucra principalmente 2 practicas el software testing y el refactoring.
- Elegir un requisito: Se elige de una lista el requerimiento que se cree que nos dará mayor conocimiento del problema y que a la vez sea fácilmente implementable.
- Escribir una prueba: Se comienza escribiendo una prueba para el requisito. Para ello el programador debe entender claramente las especificaciones y los requisitos de la funcionalidad que está por implementar.
- Verificar que la prueba falla: Si la prueba no falla es porque el requerimiento ya estaba implementado o porque la prueba es errónea.
- Escribir la implementación: Escribir el código más sencillo que haga que la prueba funcione. Se usa la metáfora "Déjelo simple" ("Keep It Simple, Stupid" (KISS)).
- Ejecutar las pruebas automatizadas: Verificar si todo el conjunto de pruebas funciona correctamente.
- Eliminación de duplicación: El paso final es la refactorización, que se utilizará principalmente para eliminar código duplicado. Se hacen de a una vez un pequeño cambio y luego se corren las pruebas hasta que funcionen.
- Actualización de la lista de requisitos: Se actualiza la lista de requisitos tachando el requisito implementado.
public void testSuma() {
assertEquals(5, Matematicas.suma(2,3));
}
assertEquals(5, Matematicas.suma(2,3));
}
el test fallara porque falta la libreria Matematicas por tanto se desarrolla de tal manera que la prueba se cumpla:
public class Matematicas {
public static int suma (int a, int b) {
return 5;
}
}
public static int suma (int a, int b) {
return 5;
}
}
este codigo cumple con la prueba pero se debe rehacer para que el codigo funcione para cualquier caso:
public class Matematicas {
public static int suma (int a, int b) {
return a+b;
}
}
public static int suma (int a, int b) {
return a+b;
}
}
luego se elige el siguiente requerimiento y repetir el ciclo.
TDD es parte de las metodologias agiles. permite dividir tareas por tanto se integra muy bien con kanban.
TDD es parte de las metodologias agiles. permite dividir tareas por tanto se integra muy bien con kanban.
domingo, 15 de abril de 2012
Suscribirse a:
Comentarios (Atom)