Test Suite Optimisation Based on Response Status Codes and Measured Code Coverage

Total Page:16

File Type:pdf, Size:1020Kb

Test Suite Optimisation Based on Response Status Codes and Measured Code Coverage DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING Tuomas Parttimaa TEST SUITE OPTIMISATION BASED ON RESPONSE STATUS CODES AND MEASURED CODE COVERAGE Master’s Thesis Degree Programme in Computer Science and Engineering April 2013 Parttimaa T. (2013) Test Suite Optimisation Based on Response Status Codes and Measured Code Coverage. University of Oulu, Department of Computer Science and Engineering, Degree Programme in Computer Science and Engineering, Oulu, Finland, Master’s Thesis, 78 pp., 2 Appendices. ABSTRACT A software test suite often comprises of thousands of distinct test cases. There- fore, the execution of an unoptimised test suite might waste valuable time and resources. In order to avoid the unnecessary execution of redundant test cases, the test suite should be optimised to contain fewer test cases. This thesis focuses on the optimisation efforts of a commercially available Hypertext Transfer Proto- col (HTTP) fuzzing test suite. A test setup was created for the optimisation purposes. The test setup con- sisted of the given fuzzing test suite, five different HTTP server implementations used as test subjects, and a code coverage measurement tool. Test runs were ex- ecuted against the five test subjects with the test suite, and at the same time code coverage was measured from the test subjects. In this thesis, three different types of test suite optimisation algorithms were implemented. The original test suite was optimised by applying the optimisation algorithms to the results of the test runs. Another set of test runs were performed with the optimised subset suites, while again measuring code coverage from the same test subjects. All of the coverage measurement results are presented and analysed. Based on the code coverage analysis, the test suite optimisation algo- rithms were assessed and the following research results were obtained. Code coverage analysis demonstrated with a strong degree of certainty that a variation in the response messages indicates which test cases actually exercise the test subject. The analysis showed also with a quite strong degree of certainty that an optimised test suite can achieve the same level of code coverage which was attained with the original test suite. Keywords: fuzz testing, coverage measurement, coverage testing, software test- ing, hypertext transfer protocol. Parttimaa T. (2013) Testisarjan optimointi perustuen vastausten tilakoodeihin ja mitattuun koodikattavuuteen. Oulun yliopisto, Tietotekniikan osasto, Tietotekniikan koulutusohjelma, Diplomityö, 78 s., 2 liitettä. TIIVISTELMÄ Ohjelmistojen testisarja koostuu usein tuhansista erilaisista testitapauksista. Tes- tisarjan suorittamisessa voi mennä hukkaan arvokasta aikaa ja resursseja, jos tes- tisarjaa ei optimoida. Testisarja tulee optimoida siten, että se sisältää vähän testi- tapauksia, jotta epäolennaisten testitapausten tarpeeton suoritus vältetään. Tämä diplomityö keskittyy kaupallisesti saatavilla olevan Hypertext Transfer Protocol (HTTP) -palvelimien fuzz-testisarjan optimointiyrityksiin. Optimointia varten luotiin testiympäristö, joka koostuu fuzz-testaussarjasta, testikohteina käytetyistä viidestä HTTP-palvelimesta ja koodikattavuuden mit- taustyökalusta. Ennalta määriteltyä testisarjaa käytettiin testikohteille suorite- tuissa testiajoissa, joiden aikana mitattiin testikohteista koodikattavuus. Diplomityössä toteutettiin kolme erilaista testisarjan optimointialgoritmia. Al- kuperäinen testisarja optimoitiin käyttämällä algoritmeja testiajojen tuloksiin. Optimoiduilla osajoukkosarjoilla suoritettiin uudet testiajot, joiden aikana mi- tattiin testikohteista koodikattavuus. Kaikki koodikattavuusmittaustulokset on esitetty ja analysoitu. Kattavuusanalyysin perusteella arvioitiin testisarjan opti- mointialgoritmien toimivuus ja saavutettiin seuraavat tutkimustulokset. Koodikattavuusanalyysin avulla saatiin varmuus siitä, että muutos vastaus- viesteissä ilmaisee, mitkä testitapaukset oikeasti käyttävät testikohdetta. Analyy- silla saatiin myös kohtalainen varmuus siitä, että optimoidulla osajoukkosarjalla voidaan saavuttaa sama koodikattavuus, joka saavutettiin alkuperäisellä testisar- jalla. Avainsanat: fuzz-testaus, kattavuuden mittaus, kattavuustestaus, ohjelmistotes- taus, hypertext transfer protocol. TABLE OF CONTENTS ABSTRACT TIIVISTELMÄ TABLE OF CONTENTS FOREWORD LIST OF ABBREVIATIONS AND SYMBOLS 1. INTRODUCTION ...............................................................................9 2. SOFTWARE TESTING ...................................................................... 11 2.1. Fuzz Testing .............................................................................. 11 2.1.1. Fuzzer Categorization ........................................................ 12 2.1.2. Mini-Simulation Method .................................................... 12 2.2. Code Coverage ........................................................................... 13 2.2.1. Line Coverage ................................................................. 14 2.2.2. Branch Coverage .............................................................. 14 2.2.3. Function Coverage ............................................................ 15 2.3. Code Coverage Measurement ........................................................ 15 2.3.1. Source Code Level Instrumentation ...................................... 15 2.3.2. Binary-Level Instrumentation .............................................. 16 3. HYPERTEXT TRANSFER PROTOCOL (HTTP) ..................................... 18 3.1. Client/Server Message Exchange ................................................... 18 3.1.1. Request Messages ............................................................ 19 3.1.2. Response Messages .......................................................... 19 3.2. Request Methods ........................................................................ 20 3.3. Response Status Codes ................................................................ 21 3.3.1. Response Status Code Classes ............................................. 21 4. TEST ENVIRONMENT ...................................................................... 22 4.1. Research Questions ..................................................................... 22 4.2. Terms of the Work ...................................................................... 23 4.3. Solution Choices of the Test Setup ................................................. 23 4.4. Test Suite Analysis ..................................................................... 24 4.4.1. Structure of the Test Suite .................................................. 25 4.4.2. Instrumentation Method ..................................................... 26 4.4.3. Test Run Result Files ........................................................ 26 4.5. Test Subject Selection .................................................................. 27 4.5.1. Nginx ............................................................................ 28 4.5.2. Lighttpd ......................................................................... 29 4.5.3. Tntnet ............................................................................ 29 4.5.4. Hiawatha ........................................................................ 29 4.5.5. Apache httpd ................................................................... 30 4.5.6. Other Candidates for Test Subjects ....................................... 30 4.6. Code Coverage Measurement Tool Selection .................................... 31 4.6.1. GNU Compiler Collection (GCC) ........................................ 31 4.6.2. Gcov ............................................................................. 31 4.6.3. Lcov .............................................................................. 32 4.6.4. Other Candidates for the Code Coverage Measurement Tool ...... 33 5. TEST SUITE OPTIMISATION ............................................................ 35 5.1. Description of the Optimisation Methods ......................................... 35 5.1.1. Test Suite Optimisation Algorithm No. 1 ............................... 36 5.1.2. Test Suite Optimisation Algorithm No. 2 ............................... 38 5.1.3. Test Suite Optimisation Algorithm No. 3 ............................... 40 5.2. Test Setup Control Script .............................................................. 41 5.3. Practical Trial ............................................................................ 42 5.3.1. Result Validation .............................................................. 42 6. TEST RESULTS ............................................................................... 44 6.1. Code Coverage Measurement Results Using the Original Test Suite ....... 45 6.2. Optimisation Results as Subset Test Suites ....................................... 46 6.2.1. Reduction in the Size of the Test Suite .................................. 47 6.3. Code Coverage Measurement Results Using the Subset Test Suites ........ 48 6.3.1. Results Using the Subset Test Suites Optimised with Algorithm No. 1 ............................................................................. 49 6.3.2. Results Using the Subset Test Suites Optimised with Algorithm No. 2 ............................................................................. 50 6.3.3. Results Using the Subset Test Suites Optimised with Algorithm No. 3 ............................................................................. 51 7. DISCUSSION ..................................................................................
Recommended publications
  • System-On-Chip FPGA Devices for Complex Electrical Energy Systems Control
    1 System-on-Chip FPGA Devices for Complex Electrical Energy Systems Control I. INTRODUCTION IGITAL electronics has become a standard for controlling electrical systems. This is due to the D constant improvement of the digital devices, whether in terms of density, performance, flexibility of use or cost reduction [1]. This paper looks into System-on-Chip (SoC) Field Programmable Gate Array (FPGA) for controlling complex electrical energy systems. These devices encompass multicore floating point microprocessors embedded with standard peripherals together with an FPGA fabric that allows the design of custom peripherals and specific hardware accelerators. Thus, SoC FPGA devices can be regarded as a good compromise between “super” microcontrollers (very fast in terms of computation but with a fixed micro-architecture) and pure FPGAs (ideal for specific concurrent micro-architectures but limited in terms of density). SoC FPGA architectures are discussed and compared with state-of-the-art DSP-controllers, since they can also be qualified as SoC devices as they are integrating floating point microprocessor cores and substantial peripherals. The main differences between these two groups of devices lies in the opportunity offered to the designer by the SoC FPGAs to customize the SoC device via its internal FPGA fabric. Two case studies demonstrate that with SoC FPGAs one can go beyond standard control by introducing new auxiliary functions that enhance market competitiveness. The first application concerns a fuel cell hybrid electric system controlled by passivity-based power management associated with an aging prognosis algorithm. For this application, it is shown that the time and cost constraints justify the use of a soft processor core to implement the controller.
    [Show full text]
  • Eaton IPM Infrastructure
    Eaton® Intelligent Power Manager ® (IPM) Infrastructure User guide Rev 1.1 02/28/2018 1 Class A EMC Statements 1.1 FCC Part 15 This equipment has been tested and found to comply with the limits for a Class A digital device, pursuant to part 15 of the FCC Rules. These limits are designed to provide reasonable protection against harmful interference when the equipment is operated in a commercial environment. This equipment generates, uses, and can radiate radio frequency energy and, if not installed and used in accordance with the instruction manual, may cause harmful interference to radio communications. Operation of this equipment in a residential area is likely to cause harmful interference, in which case the user will be required to correct the interference at his own expense. 1.2 ICES-003 This Class A Interference Causing Equipment meets all requirements of the Canadian Interference Causing Equipment Regulations ICES-003. Cet appareil numérique de la classe A respecte toutes les exigences du Reglement sur le matériel brouilleur du Canada. 1.3 EN 62040-2 Some configurations are classified under EN 62040-2 as “Class-A UPS for Unrestricted Sales Distribution.” For these configurations, the following applies: 1.3.1 WARNING This is a Class A-UPS Product. In a domestic environment, this product may cause radio interference, in which case the user may be required to take additional measures. 2 Requesting a Declaration of Conformity Units that are labeled with a CE mark comply with the following harmonized standards and EU directives: • Harmonized Standards: IEC 61000-3-12 • EU Directives: 73/23/EEC, Council Directive on equipment designed for use within certain voltage limits 93/68/EEC, Amending Directive 73/23/EEC 89/336/EEC, Council Directive relating to electromagnetic compatibility 92/31/EEC, Amending Directive 89/336/EEC relating to EMC The EC Declaration of Conformity is available upon request for products with a CE mark.
    [Show full text]
  • Vue.Js (Evan You, Ancien De Google)
    Crédits : Guillaume Rivière Axios Module d’expertise de 2e année Développer des applications full-web : Devenir développeur full-stack ! < 1. Introduction /> – ESTIA – Guillaume Rivière Dernière révision : mars 2019 1 Contexte . Technologies des GAFAM • Permet de déployer des applications et des services à l’échelle mondiale . Application riches . Progressive webapps . Single-Page Application (SPA) 2 Références . Youtube . Dooble . GMail . Amazon . Facebook . MS O365 . Twitter . Pinterest . Onshape.com . Odoo (OpenERP) 3 Transactions pages web classiques 4 Transactions application web : SPA 5 Histoire . HTML . HTML + CSS . XHTML4 . HTML5 + CSS3 . Ajax . Jquery . Bootstrap . AngularJS / Angular / React / Backbone.js 6 Application full-web . « Stack » • Front-end • API / webservice • Back-end • Base de données Développeur front-end Développeur || full-stack Développeur back-end www.alticreation.com, 2013 7 Webservice d’API : applis web / mobile 9 Cloud computing . SaaS . Google Cloud Platform . AWS . MS Azure 10 Front-end • Angular (TypeScript) • React • Vue Office québécois de la langue française : Application frontale 11 Back-end . Back-end • PHP • Symfony • Laravel • Javascript / Typescript • NodeJS • Python • Djando • Ruby • Rails • R • C++ • Crow • Silicon • Cppcms • Tntnet • ctml Office québécois de la langue française : Application dorsale 12 Base de données . Base de données • Relationnelle • MySQL • PostgreSQL • Not Only SQL (NOSQL) • PostgreSQL • MongoDB 13 Full-Stack . API / Webservice • REST • Format • JSON • XML • XML-RPC • GraphQL 14 Choix pour ce module . VueJS • Simple et facile à apprendre • Permet des projets d’ampleur • Reprend des aspects de React et Angular . Symfony • Très répandu • PHP = 80% des applications serveurs en 201X 15 Plan . VueJS 2 . Symfony 4 . VueJS + Symfony . Projet 16 Prérequis . HTML5 . CSS3 . MySQL . PHP5 . Programmation Orientée Objet .
    [Show full text]
  • 97. Proceedings of the Annual National Educational Computing Conference (18Th, Seattle, Washington, June 30-July 2, 1997)
    DOCUMENT RESUME ED 413 858 IR 018 607 TITLE Potlatch, NECC '97. Proceedings of the Annual National Educational Computing Conference (18th, Seattle, Washington, June 30-July 2, 1997). INSTITUTION National Educational Computing Conference. ISBN ISBN-1-56484-112-X PUB DATE 1997-00-00 NOTE 553p.; For the 1996 proceedings, see ED 398 877. PUB TYPE Collected Works - Proceedings (021) EDRS PRICE MF02/PC23 Plus Postage. DESCRIPTORS Access to Information; Computer Networks; ComputerSoftware; *Computer Uses in Education; Curriculum Development; Distance Education; Educational Cooperation; *Educational Technology; Electronic Mail; Electronic Publishing; Elementary Secondary Education; Futures (of Society); Higher Education; Instructional Materials; *Internet; Libraries; Local Area Networks; *Multimedia Materials; Online Systems; Sex Differences; Special Needs Students; StudentAttitudes; Teacher Attitudes; Teacher Education IDENTIFIERS Technology Plans; Virtual Classrooms ABSTRACT These conference proceedings report on the current trends, practices, and research in the field of educational technology. Papersand project descriptions are included on the following topics:digital portfolios; United Nations convention for children's rights; virtual communities and classrooms; study strategies; e-mail communication acrossthe world; empowering educators with technology; electronic books;integrating technology into the curriculum; web pages and K -12 education;library media specialists in cyberspace; instructional design; Internet andintranet applications;
    [Show full text]
  • Pipenightdreams Osgcal-Doc Mumudvb Mpg123-Alsa Tbb
    pipenightdreams osgcal-doc mumudvb mpg123-alsa tbb-examples libgammu4-dbg gcc-4.1-doc snort-rules-default davical cutmp3 libevolution5.0-cil aspell-am python-gobject-doc openoffice.org-l10n-mn libc6-xen xserver-xorg trophy-data t38modem pioneers-console libnb-platform10-java libgtkglext1-ruby libboost-wave1.39-dev drgenius bfbtester libchromexvmcpro1 isdnutils-xtools ubuntuone-client openoffice.org2-math openoffice.org-l10n-lt lsb-cxx-ia32 kdeartwork-emoticons-kde4 wmpuzzle trafshow python-plplot lx-gdb link-monitor-applet libscm-dev liblog-agent-logger-perl libccrtp-doc libclass-throwable-perl kde-i18n-csb jack-jconv hamradio-menus coinor-libvol-doc msx-emulator bitbake nabi language-pack-gnome-zh libpaperg popularity-contest xracer-tools xfont-nexus opendrim-lmp-baseserver libvorbisfile-ruby liblinebreak-doc libgfcui-2.0-0c2a-dbg libblacs-mpi-dev dict-freedict-spa-eng blender-ogrexml aspell-da x11-apps openoffice.org-l10n-lv openoffice.org-l10n-nl pnmtopng libodbcinstq1 libhsqldb-java-doc libmono-addins-gui0.2-cil sg3-utils linux-backports-modules-alsa-2.6.31-19-generic yorick-yeti-gsl python-pymssql plasma-widget-cpuload mcpp gpsim-lcd cl-csv libhtml-clean-perl asterisk-dbg apt-dater-dbg libgnome-mag1-dev language-pack-gnome-yo python-crypto svn-autoreleasedeb sugar-terminal-activity mii-diag maria-doc libplexus-component-api-java-doc libhugs-hgl-bundled libchipcard-libgwenhywfar47-plugins libghc6-random-dev freefem3d ezmlm cakephp-scripts aspell-ar ara-byte not+sparc openoffice.org-l10n-nn linux-backports-modules-karmic-generic-pae
    [Show full text]
  • Profile and Project History Englisch
    Profile and project history Englisch Name: Olaf Radicke Born: 12.07.1971 Address: Evertsstr. 3 47798 Krefeld Phone: +49-176-23187609 E-mail: [email protected] Homepage: https://olaf-radicke.de SourceForge: https://sourceforge.net/users/radicke Github: https://github.com/OlafRadicke XING: https://xing.com/profile/Olaf_Radicke Professional https://www.exali.de/siegel/Olaf-Radicke liability insurance: 1 / 18 Willingness to travel / availability in time and space Preferably conurbations with train connections (all over germany).: Maximum 80% on site. Skills Legend ★☆☆☆ basics or a little rust ★★☆☆ advanced knowledge ★★★☆ profound knowledge ★★★★ very experienced Language skills ● German: mother tongue ● Englisch: ~B2 Products and tools ● Ansible: ★★★★ ● Ansible tower: ★☆☆☆ ● Apache: ★☆☆☆ ● Artifactory: ★☆☆☆ ● Atlassian confluence: ★★☆☆ ● Atlassian JIRA: ★☆☆☆ ● Atom IDE: ★☆☆☆ ● AWX: ★☆☆☆ ● Azure: ★★☆☆ ● Bootstrap: ★☆☆☆ ● Software containerization: ★★★★ ● Deb package manager: ★☆☆☆ ● Dracut: ★☆☆☆ ● Embedded-systems: ★☆☆☆ ● Git: ★★☆☆ 2 / 18 ● GitLab CI runner: ★★☆☆ ● GitTea / Gogs: ★★☆☆ ● Grafana: ★★☆☆ ● IoT: ★★☆☆ ● Jenkins (pipieline): ★★☆☆ ● Kubernetes: ★★☆☆ ● KVM: ★★☆☆ ● Mercurial: ★☆☆☆ ● Microsoft visual code: ★☆☆☆ ● Nexus: ★☆☆☆ ● NFS: ★★☆☆ ● Nginx: ★★☆☆ ● OpenShift: ★☆☆☆ ● Ptxdist: ★☆☆☆ ● Puppet: ★☆☆☆ ● PXE: boot ★☆☆☆ ● REST: ★☆☆☆ ● RPM package manager: ★☆☆☆ ● RunDeck: ★☆☆☆ ● Saltstack: ★☆☆☆ ● SVN: ★☆☆☆ ● Terraform: ★☆☆☆ ● Xwiki: ★☆☆☆ Concepts and patterns ● Bare metal bootstrapping (Linux): ★★☆☆ ● CI/CD concepts: ★★★☆ ● DevOps concepts:
    [Show full text]
  • Michal Hrušecký Writing a Web Service
    TNTNET Web dynamite Michal Hrušecký Writing a web service PHP old and everybody claims to knows it syntax similar to many languages but still different RoR used to be the cool kid plenty of generators easy to start, hard to maintain Node.js new even cooler kid javascript all the way Tntnet web development framework contains web template system contains routing tables uses C++ as a programing language ⇒ use language you are familiar with ⇒ many libraries ready to use has to be precompiled ⇒ fast output can be standalone application shared library for web server Tntnet templating system Basically html. Special tags for various purposes: <%pre></%pre> - includes and defines and similar <%cpp></%cpp> or <{ code }> - C++ code <%args></%args> - query arguments <%session></%session> - session variables definitions <$ data $> - output the content of the variable/expression <? (cond == true) ? data ?> - conditional expression output Variables Various scopes: component - one component in ecpp file page - all components in the same ecpp file global - globally available Various lifetimes: request session thread application Tntnet example - Hello World <# This is a simple hello-world-application #> <%args> name; // define query-parameter </%args> <html> <head> <title>Hello World-application for tntnet</title> </head><body bgcolor="#FFFFFF"> <h1>Hello <$ name.empty() ? "World" : name $></h1> <form>What's your name? <input type="text" name="name" value="<$name$>"> <br/> <input type="submit"> </form> </body> </html> Tntnet example - Standalone #include
    [Show full text]
  • Apache-Ivy Wordgrinder Nethogs Qtfm Fcgi Enblend-Enfuse
    eric Ted fsvs kegs ht tome wmii ttcp ess stgit nut heyu lshw 0th tiger ecl r+e vcp glfw trf sage p6f aris gq dstat vice glpk kvirc scite lyx yagf cim fdm atop slock fann G8$ fmit tkcvs pev bip vym fbida fyre yate yturl ogre owfs aide sdcv ncdu srm ack .eex ddd exim .wm ibam siege eagle xlt xclip gts .pilot atool xskat faust qucs gcal nrpe gavl tintin ruff wdfs spin wink vde+ ldns xpad qxkb kile ent gocr uae rssh gpac p0v qpdf pudb mew cc e afuse igal+ naim lurc xsel fcgi qtfm sphinx vmpk libsmi aterm lxsplit cgit librcd fuseiso squi gnugo spotify verilog kasumi pattern liboop latrace quassel gaupol firehol hydra emoc fi mo brlcad bashdb nginx d en+ xvnkb snappy gemrb bigloo sqlite+ shorten tcludp stardict rss-glx astyle yespl hatari loopy amrwb wally id3tool 3proxy d.ango cvsps cbmfs ledger beaver bsddb3 pptpd comgt x.obs abook gauche lxinput povray peg-e icecat toilet curtain gtypist hping3 clam wmdl splint fribid rope ssmtp grisbi crystal logpp ggobi ccrypt snes>x snack culmus libtirpc loemu herrie iripdb dosbox 8yro0 unhide tclvfs dtach varnish knock tracker kforth gbdfed tvtime netatop 8y,wt blake+ qmmp cgoban nexui kdesvn xrestop ifstatus xforms gtklife gmrun pwgen httrack prelink trrnt ip qlipper audiere ssdeep biew waon catdoc icecast uif+iso mirage epdfview tools meld subtle parcellite fusesmb gp+fasta alsa-tools pekwm viewnior mailman memuse hylafax= pydblite sloccount cdwrite uemacs hddtemp wxGT) adom .ulius qrencode usbmon openscap irssi!otr rss-guard psftools anacron mongodb nero-aac gem+tg gambas3 rsnapshot file-roller schedtool
    [Show full text]
  • Web Plus Plus Tntnet
    01/2014 Webanwendungen in C++ mit Tntnet Programmieren Programmieren Web plus plus Tntnet 90 Angeregt durch die „Reifeprüfung fürs Web“ im Linux-Magazin 11/13 stellt dieser Artikel das Webframework Tntnet vor. Mit ihm lassen sich in C++ Webanwendungen mit MVC-Architektur programmieren. Olaf Radicke, Tommi Mäkitalo www.linux-magazin.de Tntnet-Applikationen lassen sich grund- sätzlich auf zwei Arten umsetzen. Entwe- der kommt ein Tntnet-Application-Server zum Einsatz, um Shared Libraries und Objektdateien zu laden und auszuführen, oder man erzeugt ein einziges lauffähiges Binary. Im ersten Fall besteht die Ap- plikation aus einer Shared Library und dem Tntnet-Application-Server. Im zwei- ten Fall lässt sich alles zu einer einzigen ausführbaren Datei zusammenfassen, was das Ausrollen vereinfacht, etwa auf Embedded-Geräten. Dieser Artikel ver- wendet die zweite Variante. Zur Ansicht © nomadsoul1, 123RF.com © nomadsoul1, Das Tntnet-Framework nutzt die ver- breitete Anwendungsarchitektur Model Im Magazin-Schwerpunkt 11/13 [1] durf- sourcen-schonend. So lassen sich damit View Controller (MVC). Für die View- ten Contao, Rails, Django und Magnolia auch Weboberflächen für die schwäche- Komponente, die für Ansichten zuständig CMS zeigen, wie sie eine Programmier- ren CPUs von Embedded-Geräten ver- ist, sieht es die projekteigene Auszeich- aufgabe lösen. Das inspirierte die Auto- wirklichen. Am anderen Ende des Spek- nungssprache ECPP vor, die C++ über ren, die Beispielanwendung für diesen trums ist es für hohe Lasten skalierbar spezielle Tags in HTML einbettet. Beim Artikel in C++ umzusetzen. Der Online- und unterstützt Multithreading. Zudem Übersetzen wandelt ein Präprozessor sie Veranstaltungskalender (Abbildung 1) ist C++ seit etwa drei Jahrzehnten ein in C++-Code um, den ein herkömmlicher zapft eine Open-Data-Schnittstelle an, fester Bestandteil der IT-Welt und inter- C++-Compiler zu einer ausführbaren Da- um Straßenfeste anzuzeigen, die in ei- national standardisiert.
    [Show full text]
  • Master En Tecnologías De La Información Especialización: Comunicación Y Multimedia
    UNIVERSIDAD POLITÉCNICA DE MADRID FACULTAD DE INFORMÁTICA TESIS DE MASTER: MASTER EN TECNOLOGÍAS DE LA INFORMACIÓN ESPECIALIZACIÓN: COMUNICACIÓN Y MULTIMEDIA “ANALISIS, DISEÑO E IMPLEMENTACION DE UN NÚCLEO PARA REDES SOCIALES INTEGRADO CON VIDEOCONFERENCIAS” AUTOR: Diego Alejandro Carrera Gallego TUTOR: Oscar Marbán Gallego JUNIO 2012 MADRID - ESPAÑA 1 AGRADECIMIENTO A Dios, mis padres, a mi director y todos los integrantes del grupo de investigación de Nueva Generación del Departamento de Ingeniería de Telemática de la Facultad de Telecomunicaciones de la UPM, quienes han sido un gran apoyo en cada uno de los avances y resultados obtenidos, siendo bases importantes para realizar este trabajo. 2 DEDICATORIA A mis padres que durante muchos años de constante apoyo, consideraciones e incentivos me han ayudado en mi educación universitaria, siendo unos de mis mejores logros tanto personal como profesional. Diego Alejandro Carrera Gallego. 3 RESUMEN El proyecto de tesis tiene como objetivo la creación de una plataforma de código libre que permita construir una red social y añadir características sociales y herramientas que integren videoconferencias como mecanismos de comunicación entre los actores. Existen estudios reconocidos (1) que nos pueden indicar una necesidad de investigación sobre los campos de las redes sociales. Esta demanda de conocimiento impulsa a la explotación de diferentes nichos de redes sociales y su integración con otros medios de comunicación que permitan responder a nuevas oportunidades de negocio de forma ágil. Recientemente las redes sociales más grandes a nivel mundial, de código propietario, como Google+ o Facebook, han integrado la videoconferencia como mecanismo de comunicación de los integrantes de la red. Sin embargo al ser privados, no se pueden realizar investigaciones sobre el comportamiento de las redes y sus componentes en cualquier nivel de complejidad.
    [Show full text]
  • Eudat D7.1.2
    European Data Grant agreement number: RI-283304 D7.1.2: Towards a Globally Scalable Archive Federation Technology (update) Author(s) Shaun de Witt (STFC), Maciej Brzeźniak (PSNC), Martin Hellmich (CERN) Status Final Version v1.1 Date 28.11.2013 Abstract: This document presents the work done in the second year of the Assessing Scalability task of the Addressing Scalability and Preservation task of EUDAT. This document is an update to deliverable D7.1.1 looking at alternative components which could be used either within the current, or as part of an alternative, CDI. Based on the experience of projects discussed in the original deliverable, we propose an alternative scalable architecture and provide a migration path from the current CDI to this new system. EUDAT – 283304 D7.1.2: Towards a Globally Scalable Archive Federation Technology (update) Document identifier: EUDAT-DEL-WP7-D7.1.2 Deliverable lead PSNC Related work package WP7 Author(s) Shaun de Witt (STFC), Maciej Brzeźniak (PSNC), Martin Hellmich (CERN) Contributor(s) Participants of Task 7.1.1 Due date of deliverable 30/09/2013 Actual submission date 28/11/2013 Reviewed by John Kennedy (RZG), Ari Lukkarinen (CSC) Approved by PMO Dissemination level PUBLIC Website www.eudat.eu Call FP7-INFRA-2011-1.2.2 Project number 283304 Instrument CP-CSA Start date of project 01/10/2011 Duration 36 months Disclaimer: The content of the document herein is the sole responsibility of the publishers and it does not necessarily represent the views expressed by the European Commission or its services. While the information contained in the document is believed to be accurate, the author(s) or any other participant in the EUDAT Consortium make no warranty of any kind with regard to this material including, but not limited to the implied warranties of merchantability and fitness for a particular purpose.
    [Show full text]
  • Impact of Environmental Factors for Wireless Network Based in Indoor Positioning Algorithms
    Impact of Environmental Factors for Wireless Network Based in Indoor Positioning Algorithms Abdoua ISSA, Philippe CANALDA, François SPIES Univ. Bourgogne Franche-comté FEMTO-ST Institute/CNRS 6174 1, Cours Louis Leprince Ringuet 25200 Montbéliard France cedex Abstract—The purpose of this paper is to show the impact that we start to study the aspects of the mobile phone (such of physical parameters (antenna gain, transmit and receive as place of occurrence, orientation, rotation etc...). By using frequency, transmit and receive power, etc.) and atmospheric the auto calibration request, we test the conditions of context conditions (temperature, test time, humidity,) in the wireless network based indoor positioning algorithms. This study focuses of environment to find the best conditions to keep the power on the accuracy and quality of the calculated position relative of the mobile signal (e.g. number and positions of persons). to the actual position. We first present the OWLPS (Owl This data is going to be stored into a database. Then we Positioning System) which is a positioning system based on IEEE are going to apply Data mining approaches (e.g. Decision 802.11 signal strength, designed, developed and released by the trees) on the database to extract the information (features) FEMTO-ST/DISC/OMNI team of University of Franche-comté at Montbéliard. The data produced by the aggregator server and use the result to select the most appropriate position are used to the positioning server in order to appreciate our of the access points in the building. In this process we use approach. Finally, we will understand the results produced by Database Sqllite to record the information in the smart phone our method with those produced by other algorithms.
    [Show full text]