Una nueva herramienta para el dise帽o de software r谩pido y sin errores

software

Cr茅dito de la foto: CC0 Public Domain

Todo proyecto de construcci贸n requiere la formulaci贸n de una serie de planos iniciales antes de que comience la construcci贸n, que sirven como base y gu铆a para todo el proceso. Se utiliza un proceso similar en el desarrollo de software, que implica un paso espec铆fico conocido como modelado. 鈥淓l proceso equivale a la elaboraci贸n de una serie de planos de un edificio antes de su construcci贸n鈥, afirma el catedr谩tico de la Facultad de Inform谩tica, Multimedia y Telecomunicaciones de la Universidad de Oberta de Catalunya (UOC) y miembro de la SOM Research Laboratorio del Instituto Interdisciplinario de Internet (IN3), Robert Claris贸.

Los ingenieros utilizan el modelado para describir un sistema de software desde una perspectiva espec铆fica, p. Ej. B. los datos que utilizar谩, sus componentes o la forma en que esperan que sea. Volviendo al ejemplo de un proyecto de construcci贸n: los planos ser铆an los modelos que se pueden utilizar como gu铆a durante la fase de desarrollo, as铆 como para realizar simulaciones y pruebas.

Seg煤n el investigador, “el tipo de modelo m谩s utilizado es la notaci贸n de diagrama de clases UML (Unified Modeling Language), que se utiliza para describir la estructura de un sistema de software”. La ventaja de trabajar con estos modelos es que son m谩s abstractos que el c贸digo fuente, que contiene muchos detalles espec铆ficos sobre la tecnolog铆a utilizada. En palabras de Claris贸: “Los modelos pueden ser m谩s concisos, m谩s f谩ciles de producir y comprender”.

Por lo tanto, el modelado servir铆a como un paso preliminar en lugar de una alternativa al c贸digo fuente. Los modelos facilitan la comprensi贸n del sistema en desarrollo y tambi茅n se pueden utilizar para generar elementos de implementaci贸n espec铆ficos, automatizando as铆 las partes repetitivas del proceso de programaci贸n.

El papel de las herramientas de verificaci贸n

Los ingenieros utilizan herramientas de verificaci贸n para evitar errores que podr铆an afectar al c贸digo en s铆 y, por tanto, a la implementaci贸n final del sistema. Claris贸 destac贸 la importancia de este proceso y dijo: “Necesitamos asegurarnos de que los modelos sean correctos para minimizar los posibles errores en el software que pudieran resultar de ellos”.

Como parte de un estudio publicado en el Journal of Object Technology, Claris贸, junto con los colegas Carlos A. Gonz谩lez (investigador del Gran Telescopio Canarias) y Jordi Cabot (investigador del ICREA), desarrollaron una nueva t茅cnica de verificaci贸n para modelos UML / OCL que resuelven un problema com煤n. Cada vez que un dise帽ador realiza cambios en el modelo, p. Ej. B. Si se agrega, elimina o cambia informaci贸n, esto significa que todo el sistema debe volver a analizarse. Por esta raz贸n, la verificaci贸n generalmente no se realiza hasta que se haya producido un modelo final al final del proceso.

Como explic贸 Claris贸, “Nuestro art铆culo describe el uso de m茅todos de verificaci贸n incrementales, lo que significa que facilitamos la verificaci贸n de un modelo con cada cambio”. En lugar de poder verificar el modelo al final del proceso, como es el caso actualmente, se puede verificar durante el dise帽o sin tener que comenzar de nuevo, lo que facilita la identificaci贸n de errores desde el principio.

Una comunidad activa, tanto a nivel nacional como mundial

Este m茅todo tambi茅n es innovador en t茅rminos de uso de certificados. Estos ejemplos muestran c贸mo funciona correctamente el modelo. Como se帽al贸 el investigador, 鈥渟i cambiamos un modelo, un nuevo certificado eliminar铆a la necesidad de verificaci贸n.

Personalizar un certificado es mucho m谩s econ贸mico que volver a ejecutar el proceso de verificaci贸n. “Los autores explican el proceso y sugieren que en lugar de verificar el nuevo modelo, se debe adaptar un certificado del modelo original al nuevo modelo. El principal desaf铆o ahora es integrar estas t茅cnicas en las herramientas y entornos de modelado de software existentes”.

Claris贸, coordinador de la Red Espa帽ola de Excelencia en Ingenier铆a de Software Dirigida a Modelos, coment贸 sobre el sector en general, destacando: “La comunidad espa帽ola del modelaje sigue siendo muy activa y participa en un gran n煤mero de proyectos de investigaci贸n nacionales e internacionales”.

Aunque la red ya no est谩 operativa, la comunidad contin煤a trabajando junta y colaborando en la conferencia anual de ingenier铆a de software y bases de datos, que proporciona un 谩rea para la ingenier铆a de software basada en modelos.


Una herramienta para automatizar la programaci贸n de dispositivos para aplicaciones de IoT


M谩s informaci贸n:
Robert Claris贸 y col. Verificaci贸n incremental de modelos UML / OCL.,. La revista de tecnolog铆a de objetos (2020). DOI: 10.5381 / jot.2020.19.3.a7

A cargo de la Universitat Oberta de Catalunya

Citar: Una nueva herramienta para facilitar el dise帽o de software r谩pido y sin errores (2021, 15 de enero), consultado el 21 de enero de 2021 desde https://techxplore.com/news/2021-01-tool-fast-error-free- software .html

Este documento est谩 sujeto a derechos de autor. Excepto en el caso de comercio justo con fines de estudio o investigaci贸n privados, no se puede reproducir ninguna parte sin permiso por escrito. El contenido se proporciona 煤nicamente con fines informativos.