10 research outputs found

    Proširiv i prilagodljiv okvir za statičku analizu nezavisnu od ulaznog jezika

    Get PDF
    In modern approach to software development, a great importance is given to monitoring  of software quality in early development phases. Therefore, static analysis becomes more important. Furthermore, software projects are becoming more complex and heterogeneous. These characteristics are reflected in a diversity of functionalities and  variety of computer languages and the technologies used for their development. Because of that consistency in static analysis becomes more important than it was earlier. In this dissertation SSQSA: Set of Software Quality Static Analyzers is described. The aim  of the SSQSA framework  is consistent static analysis. This goal is reached by introducing new intermediate source code representation called eCST: enriched Concrete Syntax Tree. The dissertation mostly focuses on eCST, intermediate representations derived from it, and their generation with description of the  tools involved in it. The main characteristic of eCST is language independence which gives to SSQSA framework two-level extensibility: supporting a new language and supporting a new  analysis. This leads to eciency of adding both level supports and consistency of added functionalities. To prove the concept, support for more than 10 characteristic languages was introduced. Furthermore, characteristic static analysis techniques (software metrics calculation,  code-clone detection, etc.) were implemented and integrated in the framework.  Established SSQSA framework provides the infrastructure for the further development of the complete platform for software quality control.U modernim pristupima razvoju softvera veliki značaj pridaje se kontroli kvaliteta softvera u ranim fazama razvoja. Zbog toga, statička analiza postaje sve značajnija. Takođe, softverski proizvodi postaju sve kompleksniji i heterogeni. Ove karakteristike se ogledaju u raznovrsnosti jezika i tehnologija koje se koriste u procesu razvoja softvera. Zbog toga, konzistentnost u statičkoj analizi dobija veći značaj nego što je to bio slučaj ranije. U ovoj disertaciji opisan je SSQSA skup statičkih analizatora za kontrolu kvaliteta (eng. Set of Software Quality Static Analyzers). Namena SSQSA okvira je konzistentna statička analiza. Cilj se postiže uvođenjem nove međureprezentacije  izvornog koda nazvane eCST (obogaćeno konkretno sintaksno stablo, eng. enriched  Concrete Syntax Tree). Fokus disertacije je primarno na eCST reprezenataciji koda,  reprezentacijama izvedenjim iz eCST i procesu njihovog generisanja, sa opisom oruđa angažovanim u ovim procesima. Osnovna i najbitnija karakteristika eCST reprezenatacije je nezavisnost od jezika u kom je izvorni kod pisan, što SSQSA okviru daje proširivost na dva nivoa: kroz podršku za nove jezike i kroz podršku za nove analize. Ovo dovodi do efikasnog uvođenja funkcionalnosti na oba navedena nivoa, kao i do konzistentnosti uvedenih funkcionalnosti.  Kao dokaz ispravnosti koncepta, podrška za više od 10 ulaznih jezika je uvedena. Takođe, implementirane su karakteristične tehnike statičke analize (izračunavanje softverskih metrika, otkrivanje duplikata u kodu, itd.) i integrisane u SSQSA okvir.  Na opisani način, postavljanjem SSQSA okvira, obezbeđena je infrastruktura za dalji razvoj kompletne platforme za kontrolu kvaliteta softvera.

    Ekstrakcija i analiza kompleksnih mreža iz različitih domena

    Get PDF
    Almost any large-scale system can be viewed as a network that shows interac-tions among entities which are constituent parts of the system. The focus of this dissertation is on complex networks from three domains: (1) networks extracted from source code of computer programs that represent design of software systems, (2) networks extracted from semantic web ontologies that describe the structure of shared and reusable knowledge, and (3) networks extracted from bibliographic records that depict collaboration in science. We proposed new methods for the extraction of networks from mentioned domains. Secondly, on several case stud-ies we demonstrated benets of network-based analysis of concrete systems from those domains. In contrast to the previous work on the subject, analyses pre-sented in this dissertation are not purely topological, but combine techniques and metrics developed under the framework of complex network theory with domain-dependent metrics.Skoro svaki kompleksan sistem se može predstaviti mrežom koja opisuje interakcije izmedju entiteta od kojih je sistem komponovan. Fokus ove disertacije je na kompleksnim mrežama iz tri domena: (1) mreže ekstrahovane iz izvornog koda računarskih programa koje reprezentuju dizajn softverskih sistema, (2) mreže ekstrahovane iz ontologija semantičkog web-a koje opisuju strukturu deljenog znanja pogodnog za višekratnu upotrebu, i (3) mreže ekstrahovane iz bibliografskih zapisa koje opisuju saradnju istraživača. U okviru disertacije predložene su nove metode za ekstrakciju mreža iz pomenutih domena. Drugo, na nekoliko studija slučaja ilustrovani su beneti mrežno orjentisane analize konkretnih sistema iz domena obuhvaćenih disertacijom. U poredjenju sa prethodnim relevantim istraživanjima, analize prezentovane u disertaciji nisu čisto topološke, nego kombinuju tehnike i metrike razvijene u okviru teorije kompleksnih mreža sa metrikama iz konkretnog domena

    Proširiv i prilagodljiv okvir za statičku analizu nezavisnu od ulaznog jezika

    Get PDF
    In modern approach to software development, a great importance is given to monitoring  of software quality in early development phases. Therefore, static analysis becomes more important. Furthermore, software projects are becoming more complex and heterogeneous. These characteristics are reflected in a diversity of functionalities and  variety of computer languages and the technologies used for their development. Because of that consistency in static analysis becomes more important than it was earlier. In this dissertation SSQSA: Set of Software Quality Static Analyzers is described. The aim  of the SSQSA framework  is consistent static analysis. This goal is reached by introducing new intermediate source code representation called eCST: enriched Concrete Syntax Tree. The dissertation mostly focuses on eCST, intermediate representations derived from it, and their generation with description of the  tools involved in it. The main characteristic of eCST is language independence which gives to SSQSA framework two-level extensibility: supporting a new language and supporting a new  analysis. This leads to eciency of adding both level supports and consistency of added functionalities. To prove the concept, support for more than 10 characteristic languages was introduced. Furthermore, characteristic static analysis techniques (software metrics calculation,  code-clone detection, etc.) were implemented and integrated in the framework.  Established SSQSA framework provides the infrastructure for the further development of the complete platform for software quality control.U modernim pristupima razvoju softvera veliki značaj pridaje se kontroli kvaliteta softvera u ranim fazama razvoja. Zbog toga, statička analiza postaje sve značajnija. Takođe, softverski proizvodi postaju sve kompleksniji i heterogeni. Ove karakteristike se ogledaju u raznovrsnosti jezika i tehnologija koje se koriste u procesu razvoja softvera. Zbog toga, konzistentnost u statičkoj analizi dobija veći značaj nego što je to bio slučaj ranije. U ovoj disertaciji opisan je SSQSA skup statičkih analizatora za kontrolu kvaliteta (eng. Set of Software Quality Static Analyzers). Namena SSQSA okvira je konzistentna statička analiza. Cilj se postiže uvođenjem nove međureprezentacije  izvornog koda nazvane eCST (obogaćeno konkretno sintaksno stablo, eng. enriched  Concrete Syntax Tree). Fokus disertacije je primarno na eCST reprezenataciji koda,  reprezentacijama izvedenjim iz eCST i procesu njihovog generisanja, sa opisom oruđa angažovanim u ovim procesima. Osnovna i najbitnija karakteristika eCST reprezenatacije je nezavisnost od jezika u kom je izvorni kod pisan, što SSQSA okviru daje proširivost na dva nivoa: kroz podršku za nove jezike i kroz podršku za nove analize. Ovo dovodi do efikasnog uvođenja funkcionalnosti na oba navedena nivoa, kao i do konzistentnosti uvedenih funkcionalnosti.  Kao dokaz ispravnosti koncepta, podrška za više od 10 ulaznih jezika je uvedena. Takođe, implementirane su karakteristične tehnike statičke analize (izračunavanje softverskih metrika, otkrivanje duplikata u kodu, itd.) i integrisane u SSQSA okvir.  Na opisani način, postavljanjem SSQSA okvira, obezbeđena je infrastruktura za dalji razvoj kompletne platforme za kontrolu kvaliteta softvera.

    Ekstrakcija i analiza kompleksnih mreža iz različitih domena

    Get PDF
    Almost any large-scale system can be viewed as a network that shows interac-tions among entities which are constituent parts of the system. The focus of this dissertation is on complex networks from three domains: (1) networks extracted from source code of computer programs that represent design of software systems, (2) networks extracted from semantic web ontologies that describe the structure of shared and reusable knowledge, and (3) networks extracted from bibliographic records that depict collaboration in science. We proposed new methods for the extraction of networks from mentioned domains. Secondly, on several case stud-ies we demonstrated benets of network-based analysis of concrete systems from those domains. In contrast to the previous work on the subject, analyses pre-sented in this dissertation are not purely topological, but combine techniques and metrics developed under the framework of complex network theory with domain-dependent metrics.Skoro svaki kompleksan sistem se može predstaviti mrežom koja opisuje interakcije izmedju entiteta od kojih je sistem komponovan. Fokus ove disertacije je na kompleksnim mrežama iz tri domena: (1) mreže ekstrahovane iz izvornog koda računarskih programa koje reprezentuju dizajn softverskih sistema, (2) mreže ekstrahovane iz ontologija semantičkog web-a koje opisuju strukturu deljenog znanja pogodnog za višekratnu upotrebu, i (3) mreže ekstrahovane iz bibliografskih zapisa koje opisuju saradnju istraživača. U okviru disertacije predložene su nove metode za ekstrakciju mreža iz pomenutih domena. Drugo, na nekoliko studija slučaja ilustrovani su beneti mrežno orjentisane analize konkretnih sistema iz domena obuhvaćenih disertacijom. U poredjenju sa prethodnim relevantim istraživanjima, analize prezentovane u disertaciji nisu čisto topološke, nego kombinuju tehnike i metrike razvijene u okviru teorije kompleksnih mreža sa metrikama iz konkretnog domena

    Prevođenje i transformisanje programa niskog nivoa

    Get PDF
    This thesis presents an approach for working with low level source code that enables automatic restructuring and raising the abstraction level of the programs. This makes it easier to understand the logic of the program, which in turn reduces the development time.The process in this thesis was designed to be flexible and consists of several independent tools. This makes the process easy to adapt as needed, while at the same time the developed tools can be used for other processes. There are usually two basic steps. First is the translation to WSL language, which has a great number of semantic preserving program transformations. The second step are the transformations of the translated WSL. Two tools were developed for translation: one that works with a subset of x86 assembly, and another that works with MicroJava bytecode. The result of the translation is a low level program in WSL.The primary goal of this thesis was to fully automate the selection of the transformations. This enables users with no domain  knowledge to efficiently use this process as needed. At the same time, the flexibility of the process enables experienced users to adapt it as needed or integrate it into other processes. The automation was achieved with a hill climbing algorithm.Experiments that were run on several types of input programs showed that the results can be excellent. The fitness function used was a built-in metric that gives the “weight” of structures in a program. On input samples that had original high level source codes, the end result metrics of the translated and transformed programs were comparable. On some samples the result was even better than the originals, on some others they were somewhat more complex. When comparing with low level original source code, the end results was always significantly improved.U okviru ove teze se predstavlja pristup radu sa programima niskog nivoa koji omogućava automatsko restrukturiranje i podizanje na više nivoe. Samim tim postaje mnogo lakše razumeti logiku programa što smanjuje vreme razvoja.Proces je dizajniran tako da bude fleksibilan i sastoji se od više nezavisnih alata. Samim tim je lako menjati proces po potrebi, ali i upotrebiti razvijene alate u drugim procesima. Tipično se mogu razlikovati dva glavna koraka. Prvi je prevođenje u jezik WSL,za koji postoji veliki broj transformacija programa koje očuvavaju semantiku. Drugi su transformacije u samom WSL-u. Za potrebe prevođenja su razvijena dva alata, jedan koji radi sa podskupom x86 asemblera i drugi koji radi sa MikroJava bajtkôdom. Rezultat prevođenja je program niskog nivoa u WSL jeziku.Primarni cilj ovog istraživanja je bila potpuna automatizacija odabira transformacija, tako da i korisnici bez iskustva u radu sa sistemom mogu efikasno da primene ovaj proces za svoje potrebe. Sa druge strane zbog fleksibilnosti procesa, iskusni korisnici mogu lakoda ga prošire ili da ga integrišu u neki drugi već postojeći   proces.Automatizacija je  postignuta pretraživanjem usponom (eng. hill climbing).Eksperimenti vršeni na nekoliko tipova ulaznih programa niskog nivoa su pokazali da rezultati mogu biti  izuzetni. Za funkciju pogodnosti je korišćena ugrađena metrika koja daje “težinu” struktura u programu. Kod ulaza za koje je originalni izvorni kôd bio dostupan, krajnje metrike najboljih varijanti prevedenih i transformisanih programa su bile na sličnom nivou. Neki primeri su bolji od originala, dok su drugi bili nešto kompleksniji. Rezultati su uvek pokazivali značajna unapređenja u odnosu na originalni kôd niskog nivoa

    Sistema Qsource en la calidad del software desarrollado en RPG

    Get PDF
    Esta Investigación pre-experimental de una muestra tuvo como propósito fundamental determinar la influencia del uso del software QSOURCE en la mejora de la calidad del software desarrollado en lenguaje RPG en el departamento de sistemas del banco AGROBANCO. A una muestra de 31 programas se les analizo con la herramienta QSOURCE y su algoritmo de análisis estático de código generando calificaciones para cada uno de losindicadores de las 7 dimensiones de la variable. La información para el análisis y la recolección de datos se realizó a través de un pre-test, y un pos-test usando la herramienta QSOURCE. El análisis estadístico se realizó aplicando el SPSS a un grupo experimental antes y después del tratamiento. También se le aplicó la prueba T de Student al grupo antes y después de la estrategia para comprobar la equivalencia inicial de ellos. La base teórica de la variable calidad del software se sustentó en las técnicas de revisión y aseguramiento de calidad de software de Pressman (2010), en el modelo de calidad del software ISO/IEC 2510 y en IEEE 1061 -1998 - IEEE Standard for a Software Quality Metrics. La base teórica para la variable sistema QSOURCE se sustenta en las técnicas de revisión y aseguramiento de calidad de software de Pressman (2010), en el modelo de calidad de software para RPG de Ladányi, et al (2015),y en el soporte de métricas de software automatizado de Senevirathne, et al (2012).Los resultados obtenidos evidenciaron una mejora en la calificación promedio de la calidad de 54.48 a 66.16 en una primera iteración. Se compararon los resultados para el grupo con pre y el pos-test permitiendo demostrar la hipótesis del trabajo y la efectividad del software para mejorar la calidad, a través del uso del software los programas desarrollados en RPG incrementaron sus calificaciones para los índices de performance, mantenibilidad, buenas prácticas, malas prácticas, complejidad y obsolescencia, como se evidencia en los resultados

    Acta Cybernetica : Volume 25. Number 2.

    Get PDF

    Exploration, navigation and localization for mobile robots.

    Get PDF
    he main goal of this thesis is the advancement of the state of the art in mobile robot autonomy. In order to achieve this objective, several contributions have been presented that tackle well defined problems in the areas of localization, navigation and exploration. The very first contribution is focused on the task of robustly finding the localization of a mobile robot in an outdoor environment. Specifically, the presented technique introduces a key methodolgy to perform sensor fusion of a global localization sensor so ubiquitous as a GPS device, within the context of a particle filter based Monte Carlo localization system. We focus on the management of multiple sensor data sources under noisy and conflicting readings. This strategy allows for a reduced uncertainty in the robot pose estimation, as well as improved robustness of the system. The second contribution presents a completely integrated navigation system running within a constrained and highly dynamic platform like a quadrotor, applied to full 3D environments. The navigation stack comprises a Simultaneous Localization and Mapping (SLAM) system for RGB-D cameras that provides both the robot pose and an obstacle map of the environment, as well as a 4D path planner capable of finding obstacle free and kinematically feasible trajectories for the quadrotor to navigate this environment. The third contribution introduces a novel approach for autonomous exploration of unknown environments with robust homing. We present a technique to predict possible environment structures in the unseen parts of the robot's surroundings based on previously explored environments. We exploit this belief to predict possible loop closures that the robot may experience when exploring an unknown part of the scene. This allows the robot to actively reduce the uncertainty in its belief through its exploration actions. Also, we introduce a robust homing system that addresses the problem of returning a robot operating in an unknown environment to its starting position even if the underlying SLAM system fails. All contributions where designed, implemented and tested on real autonomous robots: a self-driving car, a micro aerial vehicle and an underground exploration platform

    Estudio del dialecto árabe marroquí de la ciudad de Fez

    Get PDF
    Tesis inédita de la Universidad Complutense de Madrid, Facultad de Filología, Departamento de Estudios Árabes e Islámicos, leída el 20-11-2016Fruto de las entrevistas realizadas en Fez entre los años 2009 y 2013 a algunos residentes y ex-residentes de la antigua Medina que conservan un habla característica, el trabajo realizado consta de un comentario lingüístico estructurado en cuatro partes: fonología, morfosintaxis verbal, morfosintaxis nominal y morfosintaxis oracional; un corpus de ochenta y cinco textos, extraídos de las entrevistas, transcritos, traducidos y con sus anotaciones pertinentes; un glosario en base a las voces utilizadas en el corpus; una serie de conclusiones y una relación del material bibliográfico empleado. El principal objetivo del estudio ha sido establecer y presentar los rasgos más definitorios del dialecto fasí a nivel fonológico, morfológico, sintáctico y léxico; definiendo de manera sincrónica el dialecto más puro y conservador existente en la ciudad y tratando de establecer hasta qué punto sus hablantes mantienen y emplean este dialecto, que, por un lado es bien conocido y diferenciado entre los magrebófonos, tachado a veces de esnobista e imitado con guasa otras y, por otro, se encuentra expuesto a diferentes influencias como los dialectos de Rabat y Casablanca, otras lenguas con las que está en contacto como el bereber y el francés. De manera diacrónica, he tratado de comparar la situación actual del habla fasí en relación al árabe clásico por una parte; y por otra, con su fase inmediatamente precedente. De manera diatópica, he intentado establecer diferencias y semejanzas con otros dialectos marroquíes como los de Rabat, Marrakech o Tánger, así como con el dialecto judío de la ciudad y, por extensión, con algunos otros dialectos judíos como el de Túnez. El procedimiento de extracción de datos se ha llevado a cabo mediante un cuestionario dialectológico través de las cuales los informantes indicaban la voz sugerida por las imágenes que les eran mostradas y, sobre todo, mediante preguntas libres y abiertas en las que han hablado sin trabas, tras una mínima orientación o sugerencia temática en torno a la gastronomía, la historia, las costumbres, la vida actual y la vida antiguamente, la trayectoria personal, etc. Los círculos en los que se han realizado las entrevistas han sido principalmente femeninos y, salvo alguna excepción, se trata de informantes sin escolarización, mayores de 60 años, descendentes de antiguos fasíes de la Medina que tienden a la pronunciación de /¿/ en lugar de /q/ y que realizan la consonante /r/ con una velarización característica. Tras el estudio y comentario lingüístico he concluido que el dialecto de la ciudad de Fez es de tipo prehilalí-sedentario, formado sobre una base árabe de elementos fonético-fonológicos, morfológicos, sintácticos, léxicos y semánticos de los dialectos sedentarios prehilalíes, en concurrencia con algunos de las hablas beduinas y de las hablas de montaña, del árabe clásico y moderno, del bereber y de las hablas judías; y con préstamos del castellano antiguo, del turco, del persa, del francés, del castellano actual e incluso del inglés. Es por tanto un dialecto tradicional pero receptivo a otros elementos ajenos a él, con los que está en situación de contacto y que parecen irse insertando en el habla de manera no uniforme. Ello me lleva a pensar que, pese a presentar rasgos que podrían decirse propios, parece dar la sensación de que el dialecto estudiado amenaza con empezar a desaparecer: el hecho de haber encontrado con dificultad un número necesario de hablantes reconocidos como fasíes por los demás hablantes y el hecho de que características de tipo hilalí o beduino concurran, bien de manera ocasional, bien de manera permanente creando situaciones de concurrencia de, así como la presión que ejercen el árabe clásico, el bereber y el francés, parecen presagiar una paulatina e irreversible integración del dialecto fasí en la koiné en desarrollo del país.Depto. de Lingüística, Estudios Árabes, Hebreos y de Asia OrientalFac. de FilologíaTRUEunpu

    Estudio del dialecto árabe marroquí de la ciudad de Fez

    Get PDF
    Fruto de las entrevistas realizadas en Fez entre los años 2009 y 2013 a algunos residentes y ex-residentes de la antigua Medina que conservan un habla característica, el trabajo realizado consta de un comentario lingüístico estructurado en cuatro partes: fonología, morfosintaxis verbal, morfosintaxis nominal y morfosintaxis oracional; un corpus de ochenta y cinco textos, extraídos de las entrevistas, transcritos, traducidos y con sus anotaciones pertinentes; un glosario en base a las voces utilizadas en el corpus; una serie de conclusiones y una relación del material bibliográfico empleado. El principal objetivo del estudio ha sido establecer y presentar los rasgos más definitorios del dialecto fasí a nivel fonológico, morfológico, sintáctico y léxico; definiendo de manera sincrónica el dialecto más puro y conservador existente en la ciudad y tratando de establecer hasta qué punto sus hablantes mantienen y emplean este dialecto, que, por un lado es bien conocido y diferenciado entre los magrebófonos, tachado a veces de esnobista e imitado con guasa otras y, por otro, se encuentra expuesto a diferentes influencias como los dialectos de Rabat y Casablanca, otras lenguas con las que está en contacto como el bereber y el francés. De manera diacrónica, he tratado de comparar la situación actual del habla fasí en relación al árabe clásico por una parte; y por otra, con su fase inmediatamente precedente. De manera diatópica, he intentado establecer diferencias y semejanzas con otros dialectos marroquíes como los de Rabat, Marrakech o Tánger, así como con el dialecto judío de la ciudad y, por extensión, con algunos otros dialectos judíos como el de Túnez. El procedimiento de extracción de datos se ha llevado a cabo mediante un cuestionario dialectológico través de las cuales los informantes indicaban la voz sugerida por las imágenes que les eran mostradas y, sobre todo, mediante preguntas libres y abiertas en las que han hablado sin trabas, tras una mínima orientación o sugerencia temática en torno a la gastronomía, la historia, las costumbres, la vida actual y la vida antiguamente, la trayectoria personal, etc. Los círculos en los que se han realizado las entrevistas han sido principalmente femeninos y, salvo alguna excepción, se trata de informantes sin escolarización, mayores de 60 años, descendentes de antiguos fasíes de la Medina que tienden a la pronunciación de /¿/ en lugar de /q/ y que realizan la consonante /r/ con una velarización característica. Tras el estudio y comentario lingüístico he concluido que el dialecto de la ciudad de Fez es de tipo prehilalí-sedentario, formado sobre una base árabe de elementos fonético-fonológicos, morfológicos, sintácticos, léxicos y semánticos de los dialectos sedentarios prehilalíes, en concurrencia con algunos de las hablas beduinas y de las hablas de montaña, del árabe clásico y moderno, del bereber y de las hablas judías; y con préstamos del castellano antiguo, del turco, del persa, del francés, del castellano actual e incluso del inglés. Es por tanto un dialecto tradicional pero receptivo a otros elementos ajenos a él, con los que está en situación de contacto y que parecen irse insertando en el habla de manera no uniforme. Ello me lleva a pensar que, pese a presentar rasgos que podrían decirse propios, parece dar la sensación de que el dialecto estudiado amenaza con empezar a desaparecer: el hecho de haber encontrado con dificultad un número necesario de hablantes reconocidos como fasíes por los demás hablantes y el hecho de que características de tipo hilalí o beduino concurran, bien de manera ocasional, bien de manera permanente creando situaciones de concurrencia de, así como la presión que ejercen el árabe clásico, el bereber y el francés, parecen presagiar una paulatina e irreversible integración del dialecto fasí en la koiné en desarrollo del país
    corecore