Artículo BIT
Tendencias en ingeniería software de comunicación
bit 80 Tendencias en Ingeniería Software de Comunicación Gonzalo León Dep Ingeniería Telemáticas UPM La necesidad de disponer de software de comunicaciones urge históricamente de la existencia de información geográficamente dislribuidat que debe ser manejada deforma transparente para los usuarios Actualmente el software de comunicaciones no es importantey en tanto en cuanto constituye un producto en sí mismo Cque también lo esjt sino en su consideración de infraestructura software para muchos otros productos EVOLUCIÓN HISTÓRICA Los primeros productos de comunicaciones fueron protocolos diseñados por los fabricantes de equipos con el objetivo de interconectar ésos Poco a pocot la extensión de las redes de comunN caciones1 la necesidad de buscar niveles de trar parencia más cercanos a las aplicaciones y la ne cesidad de abordar la complejidad del diseño de los mismos hizo necesario estructurar las funcuv nes del sistema software de comunicaciones y de finir una torre de protocolos a diferentes nive Existia un problema adicional a resolver der vado de la propia madurez del mercadoi facilitar la interconexión de equipos de diferentes fabiv cantcs1 Solucionarlo obligaba a definir una arqun tectura de comunicaciones abstracta e indepeiv diente yt más importantel forzar su utilización La solución llegaría mediante un acuerdo ge neral entre fabricantes organismo de normaliz ciónJ instituciones gubernamentales y usuariosÉ Este fue el camino emprendido a mediados de los años setenta por ISO con la creación de un Mock lo de Referencia para Sistemas Abiertos COSO ci ya lenta evolución y aparición de productos nos ha llevado hasta el momento actual Los nuevos conceptos que ha ido surgiendo cíesele la década de los setenta en el campo de la ingeniería software se han asentado de manera muy lentaI El caso de los sistemas software de a municaciones est sin embargoJ característico de una sutKÜsciplina en el que la necesidad de disc ñar productos críticos Csobre los que descansan muchas otras aplicacionesí y asegurar su correc ción les ha hecho un campo abonado para el e sayo de técnicas y procedimientos novedosos1 Se considera usualmente a la Ingeniería Soft ware de Protocolos como una instanciación de técnicas y procedimientos de ingeniería software en donde el énfasis se sitúa en el desarrollo de técnicas para derivar especificaciones no amb guas a partir de descripciones textuales de prou colos y servicios dnuchas de ellas realizadas por organismos internacionalesX desarrollar a partir de ellas un producto y en muchos casos1 probar que es confonne a una norma intemacionaL Desde el punto de vista software los sistemas de comunicaciones están caracterizados por estar wLa extensión de las redes de comunicaciones y la necesidad de abordar la complejidad del diseño hizo necesario estructurar las funciones del sistema software de comunicaciones77 bit 80 11 h mediados de los años setenta se vio la necesidad de disponer de lenguajes de descripción rigurosos que evitasen la ambigüedad en las descripciones de los protocolos77 constituidos por diversos componentes que intei cambian información concurrentemente bajo res tricciones temporal GeneralmenteI deben fo mar parte de sistemas durante mucho tiempo y evolucionar con ellosI listos sistemas se comenzaron a diseñar a partir de descripciones textuales empleando construo ciones de bajo nivel en aras de una supuesta nc cesidad de encienda A mediados de los años setenta se vio la necx sidad de disponer de lenguajes de descripción rN gurosos que evitasen la ambigüedad en las des cripciones de los protocolos1 listos primeros le guajes fueron extensiones de máquinas de estado finittx Posteriormente surgieron otras más pode rosas con una base matemática más potente Las denominadas técnicas ele descripción fo mal CFITD han sido desarrolladas por centros de investigación juntos con organismos de normal zación y otras instituciones Hasta el momenK se han normalizado tres técnicas de descripción fof mali LOTOS y ESTELLE por la ISO dnternacional Standard Organizatio y SOL por el CCITT Si bien hasta los años ochenta los diseñadores utilizaban lenguajes convencionales y concentn ban sus esfuerzos en la fase de implementación1 ahora tenían a su disposición un conjunto de mc todos formales que potencialmente les permitía asegurar que lo que estaban diseñando era co rrecto antes de implementarkx Digo potenciaU mente porque pasarán varios años antes de que efectivamente constituyan el método común env pleado por los diseñadores de productos complt jos de comunicacionesI ESJADO DEL ME ACTUAL Resumamos seguidamente la situación en la que nos encontramos desde dos facetas difere ciadasi académica e industrial üi perspectiva ac clémica nos indica el camino que puede tomar la ingeniería de protocolos en el próximo futuro y la perspectiva industrial por otro ladot nos permite acercarnos a lo que es factible realizar en el mo mentó actual y las necesidades que5 desde la uv dustrial se requieren para solucionar los prob mas existentesI Kl interés de las universidades y centros de i vestigación se ha centrado durante la última déc da en desarrollar B Técnicas para comprobar la corrección lógica del comportamiento del protocolo a partir de su especificaciótL 9 Conjuntos integrados de herramientas para generar implementaciones fiables y eficieiv tes a partir de especificaciones formales Mecanismos de prueba de conformidad de las implementaciones tomando como itkxU lo las especificaciones de referencia Si repasamos la lista anteriormente mencioi da veremos que la mayor parte de los elementos de la misma gravitan sobre la disponibilidad de un marco teórico sobre el que podamos razonar El interés de la industria1 por otro lado1 está 1N gado al desarrollo de productos dentro de restric ciones de tiempo y coste que los hagan adeem dos en un dominio de aplicación concretoI En función de ello5 la industria de comunicaciones se ha mostrado receptiva a mejorar y modificar sus tancialmente sus procedimientos de trabajo sienv pre y cuando se le demuestra fehacientemente que las nuevas y prometedoras técnicas han rra durado lo suficiente como para poder ser empfe das en el diseño de productos realesI Desgraciadamente1 muchas de las técnicas prometedoras durante su incubación en un ce tro académico han resultado casi inútiles cuando se han tenido que enfrentar a problemas surgidos en el desarrollo de decenas de miles de líneas de código 1 Desde el punto de vista de la ingeniería sorV wareJ una de las técnicas que más interés ha des pertado en los últimos años es la de generación rápida de prototipos El uso de FDTs permite abordar el diseño de prototipos de una manera inmediata ya que la propia especificación es un bit 80 meo prototipo que puede ejecutarse y7o derivar semN automáticamente a partir de ella una implemenc cíóil Dentro de las técnicas de descripción formal actualmente normalizadas K es SDL la más iotro ducida en la industria por dos razones fundameiv talesi la posibilidad de utilizar un modelo de siste ma derivado de las conocidas máquinas de estado finito familiares a la mayor parte de los diseñado res actuales y la disponibilidad de productos cx merciales de soporte de calidad razonable LOTOSt por otro lado1 posee un modelo de comportamiento más rico basado en álgebras de procesos1 Permite manejar de forma más potente niveles de abstracción y refinamiento y su teoría de equivalencia entre especificaciones es más iv gurosal Sin embargo1 con muchos menos años de desarrollo que SDL1 sus herramientas y meuxlokv gía de desarrollo están menos maduras aunque avanza de manera muy rápida 1 PERSPECTIVAS PARA IA OECAOA OE LOS 90 Desde un perspectiva personal considero que existen cinco líneas de acción que van a tener una importancia decisiva en los próximos años en el desarrollo de sistemas de comunicacionesI Análisis de especifícaciones1 El objetivo es disponer de técnicas automáticas de análisis de especificaciones grandes y pruebas de conformidad de especificaciones con implc mentacionesI Automatización de los sistemas de prueba 1 La derivación automática de casos de pri ba a partir de especificaciones formales es una de las soluciones más eficaces para anv pliar la utilidad de las FDTs dentro de la inv portante faceta de las pruebas de conform dacL Todavía no se dispone de métodos completos pero sí existen prototipos promo tedores que generan muchos de ellosi Consolidación de los conceptos metodológ cosI El uso de las FDTs implica un ciclo de vida de desarrollo diferente del convencuv naL La utilización de ciclos de vida altemat vosI exige disponer de métodos de diseño coherentes aplicados a los sistemas de exv municacionesI En este sentido1 el desarrollo de prototipos es un elemento fundamental Formalización de aspectos no funcionales1 Si bien la descripción funcional de un proto 1 Otra técnica dio normalizada por un organismo iniernacionaD pero ampliamente utilizada en las mrcas de análisis de sistemas concurrefr tes son las redes tío IViri Su uso está restringido al análisis de propit clailrs v menos a las labores de diserte coló o servicio puede realizarse razonablc mente bienJ mucho más esfuerzo es neex rio para incluir Cdentro de una técnica de es pecifícación formaD aspectos de restrieck nes temporales y la posibilidad de análisis de prestaciones 9 Generación automática de códigc El objet vo es el de disponer de herramientas capa ces de generar una implementación disüv buida eficiente a partir de una descripción formal casi automáticamente Los prototipos actualmente disponibles permiten augurar un buen futuro a esta línea de trabaje Aunque aún queda mucho camino por hacen partimos de una situación envidiable hace tan sc lo unos pocos años1 Podemos decirt sin temor a equivocamosI que éste es el sector industrial en el que más esfuerzos se están realizando para incoi porar las técnicas de descripción formal en la práctica de ingenieñ La ingeniería de protocolos tiene que extender su aplicación desde los clásicos protocolos OSI para adaptarse a redes de alta velocidacL interav nexión a alta velocidad entre redes locales redes digitales de servicios integrados de banda ancha1 cil donde otros organismos como el CCITT están interviniende Esto planteará nuevas exigencias a las técnicas de diseño y a las herramientas de so porte La situacióiL no obstante es cjue el uso de estas técnicas no está ni mucho menos extendickL En mi opinión lo que unos y otros deberemos hacer es considerar los aspectos de transferencia teOKV lógica e su total dimensióiL Ni la academia resoN verá un problema industrial que no conoce ni la industria utilizará adecuadamente una nueva téc nica sino es a través de proyectos piloto que pe mita insertarlos en su realidad de desarrollo y gc tión diaric wDesde el punto de vista de la ingeniería software una de las técnicas que más interés ha despertado en los últimos años es la de generación rápida de prototiposw
30 oct 2015