1 resultado para acceptance
em Cor-Ciencia - Acuerdo de Bibliotecas Universitarias de Córdoba (ABUC), Argentina
Resumo:
Identificaci��n y caracterizaci��n del problema. Uno de los problemas m��s importantes asociados con la construcci��n de software es la correcci��n del mismo. En busca de proveer garant��as del correcto funcionamiento del software, han surgido una variedad de t��cnicas de desarrollo con s��lidas bases matem��ticas y l��gicas conocidas como m��todos formales. Debido a su naturaleza, la aplicaci��n de m��todos formales requiere gran experiencia y conocimientos, sobre todo en lo concerniente a matem��ticas y l��gica, por lo cual su aplicaci��n resulta costosa en la pr��ctica. Esto ha provocado que su principal aplicaci��n se limite a sistemas cr��ticos, es decir, sistemas cuyo mal funcionamiento puede causar da��os de magnitud, aunque los beneficios que sus t��cnicas proveen son relevantes a todo tipo de software. Poder trasladar los beneficios de los m��todos formales a contextos de desarrollo de software m��s amplios que los sistemas cr��ticos tendr��a un alto impacto en la productividad en tales contextos. Hip��tesis. Contar con herramientas de an��lisis autom��tico es un elemento de gran importancia. Ejemplos de esto son varias herramientas potentes de an��lisis basadas en m��todos formales, cuya aplicaci��n apunta directamente a c��digo fuente. En la amplia mayor��a de estas herramientas, la brecha entre las nociones a las cuales est��n acostumbrados los desarrolladores y aquellas necesarias para la aplicaci��n de estas herramientas de an��lisis formal sigue siendo demasiado amplia. Muchas herramientas utilizan lenguajes de aserciones que escapan a los conocimientos y las costumbres usuales de los desarrolladores. Adem��s, en muchos casos la salida brindada por la herramienta de an��lisis requiere cierto manejo del m��todo formal subyacente. Este problema puede aliviarse mediante la producci��n de herramientas adecuadas. Otro problema intr��nseco a las t��cnicas autom��ticas de an��lisis es c��mo se comportan las mismas a medida que el tama��o y complejidad de los elementos a analizar crece (escalabilidad). Esta limitaci��n es ampliamente conocida y es considerada cr��tica en la aplicabilidad de m��todos formales de an��lisis en la pr��ctica. Una forma de atacar este problema es el aprovechamiento de informaci��n y caracter��sticas de dominios espec��ficos de aplicaci��n. Planteo de objetivos. Este proyecto apunta a la construcci��n de herramientas de an��lisis formal para contribuir a la calidad, en cuanto a su correcci��n funcional, de especificaciones, modelos o c��digo, en el contexto del desarrollo de software. M��s precisamente, se busca, por un lado, identificar ambientes espec��ficos en los cuales ciertas t��cnicas de an��lisis autom��tico, como el an��lisis basado en SMT o SAT solving, o el model checking, puedan llevarse a niveles de escalabilidad superiores a los conocidos para estas t��cnicas en ��mbitos generales. Se intentar�� implementar las adaptaciones a las t��cnicas elegidas en herramientas que permitan su uso a desarrolladores familiarizados con el contexto de aplicaci��n, pero no necesariamente conocedores de los m��todos o t��cnicas subyacentes. Materiales y m��todos a utilizar. Los materiales a emplear ser��n bibliograf��a relevante al ��rea y equipamiento inform��tico. M��todos. Se emplear��n los m��todos propios de la matem��tica discreta, la l��gica y la ingenier��a de software. Resultados esperados. Uno de los resultados esperados del proyecto es la individualizaci��n de ��mbitos espec��ficos de aplicaci��n de m��todos formales de an��lisis. Se espera que como resultado del desarrollo del proyecto surjan herramientas de an��lisis cuyo nivel de usabilidad sea adecuado para su aplicaci��n por parte de desarrolladores sin formaci��n espec��fica en los m��todos formales utilizados. Importancia del proyecto. El principal impacto de este proyecto ser�� la contribuci��n a la aplicaci��n pr��ctica de t��cnicas formales de an��lisis en diferentes etapas del desarrollo de software, con la finalidad de incrementar su calidad y confiabilidad. A crucial factor for software quality is correcteness. Traditionally, formal approaches to software development concentrate on functional correctness, and tackle this problem basically by being based on well defined notations founded on solid mathematical grounds. This makes formal methods better suited for analysis, due to their precise semantics, but they are usually more complex, and require familiarity and experience with the manipulation of mathematical definitions. So, their acceptance by software engineers is rather restricted, and formal methods applications have been confined to critical systems. Nevertheless, it is obvious that the advantages that formal methods provide apply to any kind of software system. It is accepted that appropriate software tool support for formal analysis is essential, if one seeks providing support for software development based on formal methods. Indeed, some of the relatively recent sucesses of formal methods are accompanied by good quality tools that automate powerful analysis mechanisms, and are even integrated in widely used development environments. Still, most of these tools either concentrate on code analysis, and in many cases are still far from being simple enough to be employed by software engineers without experience in formal methods. Another important problem for the adoption of tool support for formal methods is scalability. Automated software analysis is intrinsically complex, and thus techniques do not scale well in the general case. In this project, we will attempt to identify particular modelling, design, specification or coding activities in software development processes where to apply automated formal analysis techniques. By focusing in very specific application domains, we expect to find characteristics that might be exploited to increase the scalability of the corresponding analyses, compared to the general case.