Está en la página 1de 7

Aseguramiento de la calidad de software

U6 09/02/2023 Juan Manuel Chavez Martinez

6.1 Definir una estrategia de aseguramiento de la calidad de software.

¿COMO OBTENER UN SOFTWARE DE CALIDAD?

La obtención de un software con calidad implica la utilización de metodologías o procedimientos


estándares para el análisis, diseño, programación y prueba del software que permitan uniformar la
filosofía de trabajo, en aras de lograr una mayor confiabilidad, mantenibilidad y facilidad de
prueba, a la vez que eleven la productividad, tanto para la labor de desarrollo como para el control
de la calidad del software.

La política establecida debe estar sustentada sobre tres principios básicos: tecnológico,
administrativo y ergonómico.

El principio tecnológico define las técnicas a utilizar en el proceso de desarrollo del software.

El principio administrativo contempla las funciones de planificación y control del desarrollo del
software, así como la organización del ambiente o centro de ingeniería de software.

El principio ergonómico define la interfaz entre el usuario y el ambiente automatizado.

La adopción de una buena política contribuye en gran medida a lograr la calidad del software, pero
no la asegura. Para el aseguramiento de la calidad es necesario su control o evaluación.

¿COMO CONTROLAR LA CALIDAD DEL SOFTWARE?

Para controlar la calidad del software es necesario, ante todo, definir los parámetros, indicadores
o criterios de medición, ya que, como bien plantea Tom De Marco, "usted no puede controlar lo
que no se puede medir".

Las cualidades para medir la calidad del software son definidas por innumerables autores, los
cuales las denominan y agrupan de formas diferentes. Por ejemplo, John Wiley define métricas de
calidad y criterios, donde cada métrica se obtiene a partir de combinaciones de los diferentes
criterios. La Metodología para la evaluación de la calidad de los medios de programas de la CIC, de
Rusia, define indicadores de calidad estructurados en cuatro niveles jerárquicos: factor, criterio,
métrica, elemento de evaluación, donde cada nivel inferior contiene los indicadores que
conforman el nivel precedente. Otros autores identifican la calidad con el nivel de complejidad del
software y definen dos categorías de métricas: de complejidad de programa o código, y de
complejidad de sistema o estructura.

Todos los autores coinciden en que el software posee determinados índices medibles que son las
bases para la calidad, el control y el perfeccionamiento de la productividad.

Una vez seleccionados los índices de calidad, se debe establecer el proceso de control, que
requiere los siguientes pasos:

Definir el software que va a ser controlado: clasificación por tipo, esfera de aplicación,
complejidad, etc., de acuerdo con los estándares establecidos para el desarrollo del software.

Seleccionar una medida que pueda ser aplicada al objeto de control. Para cada clase de software
es necesario definir los indicadores y sus magnitudes.
Aseguramiento de la calidad de software
U6 09/02/2023 Juan Manuel Chavez Martinez

Crear o determinar los métodos de valoración de los indicadores: métodos manuales como
cuestionarios o encuestas estándares para la medición de criterios periciales y herramientas
automatizadas para medir los criterios de cálculo.

Definir las regulaciones organizativas para realizar el control: quiénes participan en el control de la
calidad, cuándo se realiza, qué documentos deben ser revisados y elaborados, etc.

A partir del análisis de todo lo anterior, nuestro Centro se encuentra enfrascado en un proyecto
para el Aseguramiento de la Calidad del Software (ACS), válido para cualquier entidad que se
dedique a la investigación, producción y comercialización del software, el cual incluye la
elaboración de un Sistema de Indicadores de la Calidad del Software, la confección de una
Metodología para el Aseguramiento de la Calidad del Software y el desarrollo de herramientas
manuales y automatizadas de apoyo para la aplicación de las técnicas y procedimientos del ACS,
de forma tal que se conforme un Sistema de Aseguramiento de la Calidad del Software.

6.2 Gestión de riesgos.

Probablemente hayas notado que los proyectos resultan mejor cuando los planificas y gestionas
con eficiencia. También será muy útil que desarrolles aun más tus habilidades para gestionar
proyectos y que implementes estrategias comprobadas para la gestión de proyectos. Pero incluso
los proyectos mejor desarrollados, también tienen riesgos.

La mejor manera de evitar riesgos en los proyectos es enfrentándolos con anticipación. La


planificación proactiva de este tipo de imprevistos puede ser útil para encauzar a tu equipo por
aguas tranquilas, en vez de quedar atrapado en medio de la tormenta. Si nunca antes has
desarrollado un plan de gestión de riesgos, seguramente habrás sufrido, en proyectos anteriores,
las consecuencias que tienen los riesgos inesperados. Descubre en este artículo qué es la gestión
de riesgos y cómo emplearla en tu proyecto en tan solo 6 pasos, y así garantizar el éxito de este.
Aseguramiento de la calidad de software
U6 09/02/2023 Juan Manuel Chavez Martinez

La gestión de riesgos de los proyectos, también conocida como risk management, es la práctica de
identificar, analizar y responder de manera proactiva a diferentes tipos de riesgos potenciales de
un proyecto. Un riesgo de un proyecto es todo aquello que pueda afectar al éxito del proyecto,
puede ser algo que cause retrasos en el cronograma del proyecto, que haga que se exceda el
presupuesto previsto o cualquier cosa que derive en la disminución del rendimiento del equipo de
un modo u otro.

Con una gestión de riesgos efectiva, puedes detectar cualquier riesgo en potencia que pueda
surgir durante el ciclo de vida de un proyecto y mitigarlo para que el proyecto se mantenga en
curso, dentro del presupuesto y bien orientado.

6.3 Gestión de métricas e Indicadores clave de rendimiento (KPIs).

Para explicar qué son los KPI, no podemos saltarnos la traducción en inglés: Key Performance
Indicators, es decir son los indicadores de rendimiento que se implementan para evaluar las
actividades empresariales.

Suena muy sencillo; pero ¿cómo implementarlo? Aquí vamos, no te detengas.

Los indicadores KPI permiten medir en tiempo real las estrategias de marketing o ventas, recursos
humanos, producción, entre otras áreas de la empresa.

Los indicadores comunican de forma clara y relevante, es un conjunto de buenas prácticas para
lograr alcanzar los objetivos organizacionales.

Existe una variedad de KPI que pueden ayudarte a monitorear, rastrear y evaluar el progreso de tu
negocio:

 Indicadores cuantitativos: Se representan por números que pueden ser porcentajes o


números enteros; los cuales manifiestan valores como escalas de calificación.
 Indicadores cualitativos: Se expresan a través de opiniones. Por ejemplo una encuesta de
satisfacción de empleados puede ser un ejemplo de datos cualitativos basados en la
retroalimentación.
 Indicadores principales: Son los indicadores que pueden tener incluir variables con la
finalidad de identificar las tendencias en el largo plazo del mercado para predecir
resultados futuros de los procesos comerciales.
 Indicadores rezagados: Los Kpis rezagados son comparativos del desempeño actual de una
empresa en un área particular con el desempeño anterior.
 Indicadores de salida: Miden el éxito o fracaso de las actividades comerciales; es decir, la
cantidad de productos o servicios creados a través de un proceso en particular.
Aseguramiento de la calidad de software
U6 09/02/2023 Juan Manuel Chavez Martinez

6.4 Roadmaps.

El roadmap funciona como un instrumento de planificación clave para el éxito a largo plazo de
cualquier empresa. Establece prioridades claramente definidas, ofrece visibilidad sobre los pasos
necesarios para lograr cada meta y permite identificar rápidamente cuando se desvían los planes
originales.

Utilizar esta herramienta ayuda a todas las áreas de especialidad dentro de una empresa - desde
marketing hasta finanzas - a mantenerse alineadas hacia el mismo objetivo común.

Por eso esta vez te enseñaremos todo sobre este instrumento al que puedas sacarle provecho,
establecer metas claras, identificar prioridades y monitorear el progreso hacia tus objetivos
estratégicos.

El roadmap u hoja de ruta en español es una herramienta visual que te ayuda a organizar tus
objetivos y prioridades. Esto te permite proyectar el camino hacia la realización de tus planes
estratégicos, reduciendo a la vez el tiempo y riesgo.
Aseguramiento de la calidad de software
U6 09/02/2023 Juan Manuel Chavez Martinez

6.5 Herramientas para el aseguramiento transversal de la calidad

Existen varias herramientas de control de calidad que facilitan el aseguramiento de la calidad del
software. Según sea nuestro propósito, podemos encontrar con numerosas posibilidades
disponibles para realizar diferentes tipos de prueba como, funcionales, rendimiento, regresión,
etc. tanto gratuitas (open source) como de pago (comerciales).

A continuación veremos una selección de algunas de las mejores herramientas que hemos
clasificado en función de las siguientes pruebas de software:

 Herramientas para pruebas funcionales


 Herramientas de pruebas de rendimiento
 Herramientas de seguimiento de defectos (defectos de código)
 Herramientas de prueba de APIs
 Herramientas de pruebas de seguridad
 Herramientas de pruebas en navegadores
 Herramientas de pruebas móviles

Herramientas para pruebas funcionales

Las pruebas funcionales son un tipo de prueba de software que permite validar el sistema de
software frente a los requisitos/especificaciones funcionales. La finalidad de estos test es probar
cada función de la aplicación de software, proporcionando la entrada adecuada y verificando la
salida con los requisitos funcionales.

SoapUI es una herramienta multiplataforma de código abierto utilizada para pruebas funcionales y
no funcionales, ampliamente utilizada en pruebas de servicios web. Admite todos los protocolos y
tecnologías estándar para probar todo tipo de API. Su interfaz es muy sencilla lo que facilita el uso
tanto a usuarios como a técnicos.

herramientas de calidad de software

Selenium es una popular herramienta de prueba de software de código abierto compatible con la
mayoría de los navegadores y sistemas operativos. Ofrece compatibilidad con múltiples lenguajes
de programación como Java, JavaScript, Python, C# y más. Permite a los evaluadores automatizar
muchos procesos de prueba como pruebas funcionales.

Herramientas de pruebas de rendimiento

herramientas de calidad de software

LoadRunner es una herramienta de prueba de rendimiento de software que permite detectar


problemas de rendimiento de los componentes clave de las aplicaciones web. Es muy útil para
detectar cuellos de botella en una fase previa a la implementación o despliegue de la aplicación,
así como para identificar brechas de rendimiento antes de implementar o actualizar un nuevo
sistema.

herramientas de calidad de software


Aseguramiento de la calidad de software
U6 09/02/2023 Juan Manuel Chavez Martinez

LoadNinja es una herramienta para pruebas de rendimiento y carga basada en la nube para
aplicaciones y servicios web. Permite verificar si sus servidores web soportan una carga masiva y si
los servidores son robustos y escalables.

Herramientas de seguimiento de defectos de código

SonarQube es una herramienta de código abierto para la inspección continua de código. Recopila y
analiza el código fuente y proporciona informes sobre la calidad del código de los proyectos.
Aborda muchas partes de control de calidad del código como errores de estilo, errores
potenciales, defectos de código, duplicación de código, falta de cobertura de prueba y exceso de
complejidad.

Kiuwan es una herramienta de revisión de código online basada en análisis estático. Facilita
indicadores de alto nivel, sobre riesgo, calidad y defectos. Permite detectar errores de código
críticos y vulnerabilidades de seguridad en su software.

Herramientas de prueba de APIs

Katalon es una herramienta gratuita de automatización de pruebas para sitios web, aplicaciones
móviles y servicios web.Es una herramienta gratuita de tecnología KMS pero no de código abierto.
Dispone de grabación y reproducción y modo manual para crear casos de prueba de
automatización de manera efectiva.

Postman es un entorno de desarrollo de API que ayuda a los/as desarrolladores/as a crear, probar,
documentar, monitorear y publicar documentación para sus API. Puede realizar varios tipos de
solicitudes HTTP (GET, POST, PUT, PATCH), guardar entornos para su uso posterior y convertir la
API en código para varios idiomas como JavaScript y Python.

Herramientas de pruebas de seguridad

Netsparker es una solución de seguridad en sitios web y API que utiliza una tecnología de escaneo
basado en pruebas que verifica automáticamente las vulnerabilidades identificadas al explotarlas
de una manera segura y de solo lectura. Se utiliza principalmente para identificar problemas de
seguridad de aplicaciones web, como inyecciones SQL o Cross-site Scripting (XSS).

W3af es una aplicación web de código abierto que se utiliza para el análisis de seguridad. Esta
herramienta proporciona un escáner de vulnerabilidades y herramientas de explotación para
aplicaciones web. El escáner permite identificar más de 200 vulnerabilidades , incluidas las
secuencias de comandos entre sitios, la inyección de SQL o el comando del sistema operativo.

Herramientas de pruebas entre navegadores

LambdaTest es una plataforma de pruebas entre navegadores basada en la nube donde podrás
probar tu sitio o aplicación web en multitud de sistemas operativos y navegadores. Ayuda a
garantizar que los elementos de su aplicación web como JavaScript, CSS, HTLM5, vídeo, etc.
funciona en todos los navegadores web móviles y de escritorio.
Aseguramiento de la calidad de software
U6 09/02/2023 Juan Manuel Chavez Martinez

Sauce Labs es la única plataforma de pruebas continuas basada en la nube que permite ejecutar
sus pruebas automatizadas en más de 700 combinaciones diferentes de navegadores, sistemas
operativos y dispositivos, facilitando una infraestructura de prueba integral para pruebas
automatizadas y manuales de aplicaciones móviles y de escritorio utilizando Selenium, Appium y
JavaScript.

Herramientas de pruebas móviles

TestComplete es una plataforma funcional de pruebas automatizadas desarrollada por SmartBear


Software. TestComplete permite a los evaluadores crear pruebas automatizadas para aplicaciones
de Microsoft Windows, Web, Android (sistema operativo) e iOS. operaciones y se utiliza para la
reproducción automatizada y el registro de errores.

Testsigma es una plataforma completa de automatización de pruebas basada en la nube que


permite a los equipos ágiles simplificar y acelerar el control de calidad para aplicaciones web,
aplicaciones móviles y API.

También podría gustarte