250 research outputs found

    Property-Based Testing - The ProTest Project

    Get PDF
    The ProTest project is an FP7 STREP on property based testing. The purpose of the project is to develop software engineering approaches to improve reliability of service-oriented networks; support fault-finding and diagnosis based on specified properties of the system. And to do so we will build automated tools that will generate and run tests, monitor execution at run-time, and log events for analysis. The Erlang / Open Telecom Platform has been chosen as our initial implementation vehicle due to its robustness and reliability within the telecoms sector. It is noted for its success in the ATM telecoms switches by Ericsson, one of the project partners, as well as for multiple other uses such as in facebook, yahoo etc. In this paper we provide an overview of the project goals, as well as detailing initial progress in developing property based testing techniques and tools for the concurrent functional programming language Erlang

    A rewriting logic approach to the formal specification and verification of web applications

    Full text link
    [EN] This paper develops a Rewriting Logic framework for the automatic specification and verification of Web applications that considers the critical aspects of concurrent Web interactions, browser navigation features (e.g., forward/back-ward navigation, page refresh, and new window/tab opening), and Web script evaluation. By encompassing the main features of the most popular Web scripting languages (e.g., PHP, ASP, and Java Servlets), our scripting language is powerful enough to model the dynamics of complex Web applications, where the interactions among Web servers and Web browsers are formalized through a landmark communicating protocol that abstracts HTTP. We provide a detailed characterization of browser actions via rewrite rules and show how our models can be naturally model-checked by using the Linear Temporal Logic of Rewriting (LTLR), which is a Linear Temporal Logic that is specifically designed for model-checking rewrite theories. The framework has been completely implemented in Maude, and we report on some successful experiments that we conducted using the Maude LTLR model-checker.This work has been partially supported by the EU (FEDER) and the Spanish MEC project ref. TIN2010-21062-C02-02, and by Generalitat Valenciana ref. PROMETE02011/052. This work was carried out during the tenure by Demis Ballis of an ERCIM "Alain Bensoussan" Postdoctoral Fellowship. The research leading to these results has received funding from the European Union Seventh Framework Programme (FP7/2007-2013) under grant agreement no 246016. Daniel Romero was partially supported by FPI-MEC grant BES-2008-004860.Alpuente Frasnedo, M.; Ballis, D.; Romero, DO. (2014). A rewriting logic approach to the formal specification and verification of web applications. Science of Computer Programming. 81:79-107. https://doi.org/10.1016/j.scico.2013.07.014S791078

    Test Generation and Dependency Analysis for Web Applications

    Get PDF
    In web application testing existing model based web test generators derive test paths from a navigation model of the web application, completed with either manually or randomly generated inputs. Test paths extraction and input generation are handled separately, ignoring the fact that generating inputs for test paths is difficult or even impossible if such paths are infeasible. In this thesis, we propose three directions to mitigate the path infeasibility problem. The first direction uses a search based approach defining novel set of genetic operators that support the joint generation of test inputs and feasible test paths. Results show that such search based approach can achieve higher level of model coverage than existing approaches. Secondly, we propose a novel web test generation algorithm that pre-selects the most promising candidate test cases based on their diversity from previously generated tests. Results of our empirical evaluation show that promoting diversity is beneficial not only to a thorough exploration of the web application behaviours, but also to the feasibility of automatically generated test cases. Moreover, the diversity based approach achieves higher coverage of the navigation model significantly faster than crawling based and search based approaches. The third approach we propose uses a web crawler as a test generator. As such, the generated tests are concrete, hence their navigations among the web application states are feasible by construction. However, the crawling trace cannot be easily turned into a minimal test suite that achieves the same coverage due to test dependencies. Indeed, test dependencies are undesirable in the context of regression testing, preventing the adoption of testing optimization techniques that assume tests to be independent. In this thesis, we propose the first approach to detect test dependencies in a given web test suite by leveraging the information available both in the web test code and on the client side of the web application. Results of our empirical validation show that our approach can effectively and efficiently detect test dependencies and it enables dependency aware formulations of test parallelization and test minimization

    Formal checking of web based applications

    Full text link
    Mémoire numérisé par la Direction des bibliothèques de l'Université de Montréal

    A Web-Based Collaborative Multimedia Presentation Document System

    Get PDF
    With the distributed and rapidly increasing volume of data and expeditious development of modern web browsers, web browsers have become a possible legitimate vehicle for remote interactive multimedia presentation and collaboration, especially for geographically dispersed teams. To our knowledge, although there are a large number of applications developed for these purposes, there are some drawbacks in prior work including the lack of interactive controls of presentation flows, general-purpose collaboration support on multimedia, and efficient and precise replay of presentations. To fill the research gaps in prior work, in this dissertation, we propose a web-based multimedia collaborative presentation document system, which models a presentation as media resources together with a stream of media events, attached to associated media objects. It represents presentation flows and collaboration actions in events, implements temporal and spatial scheduling on multimedia objects, and supports real-time interactive control of the predefined schedules. As all events are represented by simple messages with an object-prioritized approach, our platform can also support fine-grained precise replay of presentations. Hundreds of kilobytes could be enough to store the events in a collaborative presentation session for accurate replays, compared with hundreds of megabytes in screen recording tools with a pixel-based replay mechanism

    Formal Requirements Analysis and Specification-Based Testing in Cyber-Physical Systems

    Get PDF
    openFormal requirements analysis plays an important role in the design of safety- and security-critical complex systems such as, e.g., Cyber-Physical Systems (CPS). It can help in detecting problems early in the system development life-cycle, reducing time and cost to completion. Moreover, its results can be employed at the end of the process to validate the implemented system, guiding the testing phase. Despite its importance, requirements analysis is still largely carried out manually due to the intrinsic difficulty of dealing with natural language requirements, the most common way to represent them. However, manual reviews are time-consuming and error-prone, reducing the potential benefit of the requirement engineering process. Automation can be achieved with the employment of formal methods, but their application is still limited by their complexity and lack of specialized tools. In this work we focus on the analysis of requirements for the design of CPSs, and on how to automatize some activities related to such analysis. We first study how to formalize requirements expressed in a structured English language, encode them in linear temporal logic, check their consistency with off-the-shelf model checkers, and find minimal set of conflicting requirements in case of inconsistency. We then present a new methodology to automatically generate tests from requirements and execute them on a given system, without requiring knowledge of its internal structure. Finally, we provide a set of tools that implement the studied algorithms and provide easy-to-use interfaces to help their adoption from the users.openXXXIII CICLO - INFORMATICA E INGEGNERIA DEI SISTEMI/ COMPUTER SCIENCE AND SYSTEMS ENGINEERING - Informatica/computer sciencePULINA, LUCAVuotto, Simon

    Automatický systém docházky na bázi rozpoznávání tváře

    Get PDF
    In colleges, universities, organizations, schools, and offices, taking attendance is one of the most important tasks that must be done on a timely or daily basis. Most of the time, it is done manually, for example, by calling names, passing around sheets of papers or checking respective identification cards. These methods are time consuming and sometimes the records are lost. Hence, there is a need for a computer-based attendance management system which can assist with this process of taking attendances automatically and saving them such that the record can be accessible at any time. The main goal of this project is to create a face recognition-based attendance system that will turn the manual process of taking attendance into an automated one. This project meets the requirements for bringing modernization to the way attendance is being taken, as well as the criteria for time management. It can be implemented in classrooms, offices or anywhere an attendance system is required. Users must be registered into the face recognition attendance system. Registration involves taking a picture of each user’s face, building a model from their facial characteristics, and then saving this model into a database. The camera is tasked with taking pictures of users faces and their facial characteristics are extracted using Python OpenCV. Moreover, the face recognition process comes in when users want to take their attendances. Their facial characteristics are compared to those stored in the database and up on a successful face recognition, the system automatically register the attendance and saves it to another database. An Excel sheet showing all recorded attendances can be generated at any time.Na vysokých školách, univerzitách, organizacích, školách a úřadech je docházka jedním z nejdůležitějších úkolů, které je třeba provádět včas nebo denně. To se obvykle provádí ručně, například vyvoláváním jmen, procházením papírů nebo kontrolou příslušných identifikačních karet. Tyto metody jsou časově náročné a někdy dochází ke ztrátě záznamů. Existuje tedy potřeba počítačového systému pro správu docházky, který může tomuto procesu automatického přebírání docházky a jejího ukládání napomáhat, aby byl záznam kdykoli zpřístupněn. Hlavním cílem této práce je vytvořit docházkový systém založený na rozpoznávání obličeje, který změní manuální proces přebírání docházky na automatizovaný. Tento projekt splňuje požadavky na modernizaci docházkové metody i kritéria pro time management. Může být implementován v učebnách, kancelářích nebo kdekoli, kde je vyžadován docházkový systém. Uživatelé musí být registrováni v docházkovém systému rozpoznávání obličejů. Registrace zahrnuje pořízení snímku obličeje každého uživatele, vytvoření modelu z jeho obličejových charakteristik a následné uložení tohoto modelu do databáze. Kamera má za úkol pořizovat snímky tváří uživatelů a jejich obličejové charakteristiky jsou extrahovány pomocí Python OpenCV. Proces rozpoznávání obličeje navíc přichází na řadu, když si uživatelé chtějí vzít docházku. Jejich obličejové charakteristiky jsou porovnávány s těmi uloženými v databázi a po úspěšném rozpoznání obličeje systém automaticky zaregistruje docházku a uloží ji do jiné databáze. List Excel zobrazující veškerou zaznamenanou docházku lze vygenerovat kdykoli.440 - Katedra telekomunikační technikydobř

    Model-Based Testing of Off-Nominal Behaviors

    Get PDF
    Off-nominal behaviors (ONBs) are unexpected or unintended behaviors that may be exhibited by a system. They can be caused by implementation and documentation errors and are often triggered by unanticipated external stimuli, such as unforeseen sequences of events, out of range data values, or environmental issues. System specifications typically focus on nominal behaviors (NBs), and do not refer to ONBs or their causes or explain how the system should respond to them. In addition, untested occurrences of ONBs can compromise the safety and reliability of a system. This can be very dangerous in mission- and safety-critical systems, like spacecraft, where software issues can lead to expensive mission failures, injuries, or even loss of life. In order to ensure the safety of the system, potential causes for ONBs need to be identified and their handling in the implementation has to be verified and documented. This thesis describes the development and evaluation of model-based techniques for the identification and documentation of ONBs. Model-Based Testing (MBT) techniques have been used to provide automated support for thorough evaluation of software behavior. In MBT, models are used to describe the system under test (SUT) and to derive test cases for that SUT. The thesis is divided into two parts. The first part develops and evaluates an approach for the automated generation of MBT models and their associated test infrastructure. The test infrastructure is responsible for executing the generated test cases of the models. The models and the test infrastructure are generated from manual test cases for web-based systems, using a set of heuristic transformation rules and leveraging the structured nature of the SUT. This improvement to the MBT process was motivated by three case studies of MBT that we conducted that evaluate MBT in terms of its effectiveness and efficiency for identifying ONBs. Our experience led us to develop automated approaches to model and test-infrastructure creation, since these were some of the most time-consuming tasks associated with MBT. The second part of the thesis presents a framework and associated tooling for the extraction and analysis of specifications for identifying and documenting ONBs. The framework infers behavioral specifications in the form of system invariants from automatically generated test data using data-mining techniques (e.g. association-rule mining). The framework follows an iterative test -> infer -> instrument -> retest paradigm, where the initial invariants are refined with additional test data. This work shows how the scalability and accuracy of the resulting invariants can be improved with the help of static data- and control-flow analysis. Other improvements include an algorithm that leverages the iterative process to accurately infer invariants from variables with continuous values. Our evaluations of the framework have shown the utility of such automatically generated invariants as a means for updating and completing system specifications; they also are useful as a means of understanding system behavior including ONBs

    Dashboard for collecting and depicting the marine megafauna presence

    Get PDF
    While more and more technologies and software are being created and applied for the ocean setting, most of them still remain at high cost, and hinder the data to wider public. Understanding the marine biodiversity can be achieved through numerous ways, however, there is a lack of consensus and operability when depicting the marine megafauna population. Moreover, Deep Learning (DL) techniques are becoming accessible to wider population, and there is a potential of exposing them to the marine biologists, involving them to participate in public web-based dashboards, depicting those data. This dissertation addresses such issues, by providing an interactive dashboard, capable of fa cilitating the classification, prediction and deeper analysis of marine species. Using the State of Art (SoA) Machine Learning (ML) techniques for image vision, and providing the interactive vi sualizations, this thesis seeks to provide a less cumbersome apparatus for marine biologists, who can participate further in data gathering, labelling, depicting, ecological modelling, and potential calls for action. In further, this dissertation document provides the aquatic dashboard functionality using Human-Computer Interaction (HCI) techniques and interactive means to ease the upload, clas sification, and visualization of collected marine taxa, with a case study on marine megafauna imagery (e.g. whales, dolphins, sea birds, seals and turtles). As it will be hereinafter described, marine biologists, as end users, will evaluate of the proposed dashboard.Todos os dias surgem novas tecnologias e softwares que podem ser aplicados no ecossistema marinho, sendo que a maioria destas permanecem com um custo elevado, dificultando assim o acesso ao público em geral. O conhecimento deste sistema e de toda a biodiversidade nele existente, pode ser alcançado de diversas formas, no entanto, existe uma falta de consenso e operacionalidade ao descrever a população de megafauna. Além disto, técnicas de aprendizagem automática como o deep learning, permanecem acessíveis a uma população mais ampla, e existe o potential do envolvimento de profissionais da área, mais conhecidos como biólogos marinhos, para participar na criação e usabilidade de plataformas conhecidas como dashboards. Esta tese tem como função debater estas questões, fornecendo um dashboard interativo, capaz de facilitar a classificação, previsão e análise mais profunda das espécies marinhas. Usando técnicas de aprendizagem automática de última geração, para informação visual em imagens, e fornecer interfaces visuais muito interativas, esta tese procura fornecer uma ferramenta simples para os biólogos marinhos, podendo assim participar na recolha de dados, rotulagem, modelação ecológica e possíveis pedidos de alerta. A dissertação produzirá um dashboard funcional, utilizando técnicas de Interação Humano Computador (HCI) e meios interativos para facilitar o carregamento de dados, a classificação e visualização da fauna marinha coletada (p.ex. baleia, golfinho, ave marinha, foca e tartaruga). Como será descrito durante este manuscrito, biólogos marinhos, como utilizadores finais, irão participar na avaliação deste proposto dashboard

    Analysis and Verification of Service Contracts

    Get PDF
    corecore