El método SQALE

El método SQALE

El concepto de deuda técnica representa las malas prácticas en el desarrollo de software e induce a un estado de deuda que influye en el sobrecoste, no solamente en el proceso de mantenimiento del software, sino también en su funcionamiento.

La deuda técnica es un modelo que debe utilizarse para no ir empeorando un proyecto a lo largo de su ciclo de vida. El método SQALE permite gestionar la deuda técnica de nuestros proyectos y conocer qué características de nuestro código tienen acumulada más deuda. En este post revisaremos qué es esté método y cuales son sus características para poder ponerlo en práctica.

¿Qué es el método SQALE?

El método SQALE permite gestionar la deuda técnica de nuestros proyectos y nos posibilita conocer el tipo de características de nuestro código que tiene acumulado más deuda.

El método SQALE está fundamentado en ocho principales principios, a continuación os mostramos en qué consisten:

  • La calidad del código fuente es una condición no funcional.
  • Los requisitos sobre la calidad del código fuente deben estar formalizados al igual que cualquier otro requisito funcional. Un requisito de calidad que afecte al código fuente, tiene que cumplir al menos alguna de estas condiciones:
    • No es ambiguo.
    • Justificable.
    • Atómico.
    • No es redundante.
    • No contradictorio con cualquier otro requisito.
    • Implementable.
    • Verificable.
    • Aceptable.
  • Medir o valorar la calidad del código es medir la distancia entre su estado actual y el objetivo
  • El método SQALE se encarga de medir la distancia de los requisitos corrigiendo el código fuente hasta alcanzar los objetivos esperados.
  • El método SQALE utiliza la adición para agregar los costes de corrección y para poder hacer un cálculo de los indicadores de calidad.
  • El modelo de calidad de SQALE es ortogonal, es decir, que un requisito con un atributo de calidad, sólo aparecerá una vez en el modelo de calidad. Al igual que, un requisito se enlazará solamente con una subcaracterística de calidad y esta última, sólo se enlazará con una característica.
  • El modelo de calidad de SQALE tiene en cuenta el ciclo de vida del software. Las características, subcaracterísticas y requisitos se organizan de manera que se muestre la cronología de las necesidades tal y como se muestran en el ciclo de vida del software.

¿Cuál es la estructura de calidad del modelo de calidad del método SQALE?

El modelo de calidad del método SQALE está organizado en tres niveles ordenados, el primer nivel, se compone de un conjunto de características, en el segundo nivel de subcaracterísticas y en el tercer nivel, están los requisitos relacionados con los atributos internos del código fuente. A continuación, explicamos más detalladamente cada nivel.

En el primer nivel están las características

El método SQALE determina ocho características de primer nivel que se deducen del ciclo teórico de un fichero de código fuente (codificar, testear, cambiar, entregar, mantener, portar, reutilizar).

Estas características están construidas según la norma ISO 9126 y han sido elegidas porque representan propiedades internas del código e impactan directamente en los movimientos del ciclo de vida del desarrollo software.

En el segundo nivel encontramos las Subcaracterísticas

Las subcaracterísticas se utilizan para agrupar los requisitos y así poder realizar análisis con diferentes niveles de abstracción.

Existen dos tipos de subcaracterísticas:

  • Las que se corresponden con actividades del ciclo de vida como pruebas unitarias, pruebas de integración, optimización del uso de procesador o del tamaño del código generado. 
  • Las que aplican reglas determinando  buenas o malas prácticas relacionadas con la arquitectura del software y su codificación.

En el último nivel encontramos los Requisitos

Este nivel del modelo contiene los requisitos de calidad del código. Estos requisitos se refieren a aspectos que existan en el código fuente.

Cada uno de los requisitos se une con el nivel más bajo posible, en relación con la primera característica de calidad de forma cronológica.

La calificación SQALE

Consiste en producir una métrica en una escala ordinal, como por ejemplo: bien, normal, mal. La calificación para una característica es el resultado de una comparación entre el coste estimado de corregirla respecto a la estimación del coste de desarrollo o lo que es lo mismo, la deuda técnica de software.

¿Cómo poner en práctica el método SQALE?

Pues para poder incluir el método SQALE necesitamos introducir los tres niveles: los requisitos, las características y las subcaracterísticas. Pueden ser los que uno desee y como desee, pero deben cumplir las condiciones expresadas en el método, que básicamente se traduce en que:

  • El requisito debe poder medirse y no ser ambiguo.
  • El requisito sólo puede afectar a una subcaracterística.
  • Una subcaracterística sólo puede afectar a una característica.
  • Se ha de poder medir la distancia entre la situación del requisito en un momento determinado y la situación que se quiere alcanzar.

Y una vez esté definida la implementación, se debe medir y controlar la evolución de nuestra deuda técnica.

Conclusión

La deuda técnica permite conocer los intereses que están generando las malas prácticas en el ciclo de vida de un proyecto de software. Cuanta más deuda acumulada, más difícil será que un proyecto se resuelva con éxito.

El método SQALE lleva la deuda técnica un poco más lejos, creando un modelo de calidad a partir de unos requisitos, características y subcaracterísticas. Esto permite conocer más en detalle de a qué características está afectando la deuda técnica y así poder resolver y corregir nuestro proyecto.

¿Te gustaría ir más allá de Agile y Devops? Nuestra plataforma de Value Stream Management SENTRIO te ayuda a convertir tus iniciativas digitales en valor de negocio. ¡Solicita una demo gratuita ahora!

Comparte

Compartir en facebook
Facebook
Compartir en twitter
Twitter
Compartir en pinterest
Pinterest
Compartir en linkedin
LinkedIn

Entradas relacionadas

El método SQALE

El método SQALE

El concepto de deuda técnica representa las malas prácticas en el desarrollo de software e