899 research outputs found

    Ring: a Unifying Meta-Model and Infrastructure for Smalltalk Source Code Analysis Tools

    Get PDF
    International audienceSource code management systems record different versions of code. Tool support can then compute deltas between versions. To ease version history analysis we need adequate models to represent source code entities. Now naturally the questions of their definition, the abstractions they use, and the APIs of such models are raised, especially in the context of a reflective system which already offers a model of its own structure. We believe that this problem is due to the lack of a powerful code meta-model as well as an infrastructure. In Smalltalk, often several source code meta-models coexist: the Smalltalk reflective API coexists with the one of the Refactoring Engine or distributed versioning system such as Monticello or Store. While having specific meta-models is an adequate engineered solution, it multiplies meta-models and it requires more maintenance efforts (e.g., duplication of tests, transformation between models), and more importantly hinders navigation tool reuse when meta-models do not offer polymorphic APIs. As a first step to provide an infrastructure to support history analysis, this article presents Ring, a unifying source code meta-model that can be used to support several activities and proposes a unified and layered approach to be the foundation for building an infrastructure for version and stream of change analyses. We re-implemented three tools based on Ring to show that it can be used as the underlying meta-model for remote and off-image browsing, scoping refactoring, and visualizing and analyzing changes. As a future work and based on Ring we will build a new generation of history analysis tools

    Reconciling Schema Matching Networks

    Get PDF
    Depto. de Mineralogía y PetrologíaFac. de Ciencias GeológicasTRUEpu

    Distributed knowledge bases : A proposal for argumentation-based semantics with cooperation

    Get PDF
    O objectivo principal desta dissertação é definir um ambiente de negociação, baseada em argumentação, para bases de conhecimento distribuídas. As bases de conhecimentos são modeladas sobre um ambiente multiagente tal que cada agente possui uma base de conhecimento própria. As bases de conhecimento dos diversos agentes podem ser independentes ou podem incluir conhecimentos comuns. O requisito mínimo para haver negociação num ambiente multiagente é que os agentes tenham a capacidade de fazer propostas, que poderão ser aceites ou rejeitadas. Numa abordagem mais sofisticada, os agentes poderão responder com contra-propostas, com o intuito de alterar aspectos insatisfatórios da pro­ posta original. Um tipo ainda mais elaborado de negociação será o baseado em argumentação. A metáfora da argumentação parece ser adequada à modelação de situações em que os diferentes agentes interagem com o propósito de determinar o significado das crenças comuns. Numa negociação baseada em argumentação, as (contra­) propostas de um agente podem ser acompanhadas de argumentos a favor da sua aceitação. Um agente poderá, então, ter um argumento aceitável para uma sua crença, se conseguir argumentar com sucesso contra os argumentos, dos outros agentes, que o atacam. Assim, as crenças de um agente caracterizam-se pela relação entre os argumentos "internos" que sustentam suas crenças, e os argumentos "externos" que sustentam crenças contraditórias de outros agentes. Portanto, o raciocínio argumentativo baseia-se na "estabilidade externa" dos argumentos aceitáveis do conjunto de agentes. Neste trabalho propõe-se uma negociação baseada em argumentação em que, para chegarem a um consenso quanto ao conhecimento comum, os agentes constroem argumentos que sustentam as suas crenças ou que se opõem aos argumentos dos agentes que as contradizem. Além disso, esta proposta lida com conhecimento incompleto (i.e., argumentos parciais) pela definição de um processo de cooperação que permite completar tal conhecimento. Assim, a negociação entre agentes é um processo argumentativo-cooperativo, em que se podem alternar os argumentos contra e a favor das crenças de um agente. Para a formação das suas crenças, a cada agente Ag está associado um conjunto Cooperate de agentes com quem coopera e um outro Argue de agentes contra quem argumenta. A negociação proposta permite a modelação de bases de conhecimento hierárquicas, representando, por exemplo, a estrutura de uma organização ou uma taxonomia nalgum domínio, e de ambientes multi-agente em que cada agente representa o conhecimento referente a um determinado período de tempo. Um agente também pode ser inquirido sobre a verdade de uma crença, dependendo a resposta do agente em questão e de quais os agentes que com ele cooperam e que a ele se opõem. Essa resposta será, no entanto, sempre consistente/ paraconsistente com as bases de conhecimento dos agentes envolvidos. Esta dissertação propõe semânticas (declarativa e operacional) da argumentação numa base de conhecimento de um agente. Partindo destas, propõe, também, semântica declarativa da negociação baseada em argumentação num ambiente multi-agente. ⓿⓿⓿ ABSTRACT: The main objective of this dissertation is to define an argumentation-based negotiation framework for distributed knowledge bases. Knowledge bases are modelling over a multi-agent setting such that each agent possibly has an independent or overlapping knowledge base. The minimum requirement for a multi-agent setting negotiation is that agents should be able to make proposals which can then either be accepted or rejected. A higher level of sophistication occurs when recipients do not just have the choice of accepting or rejecting proposals, but have the option of making counter offers to alter aspects of the proposal which are unsatisfactory. An even more elaborate kind of negotiation is argumentation-based. The argumentation metaphor seems to be adequate for modelling situations where different agents argue in order to determine the meaning of common beliefs. ln an argumentation-based negotiation, the agents are able to send justifications or arguments along with (counter) proposals indicating why they should be accepted. An argument for an agent's belief is acceptable if the agent can argue successfully against attacking arguments from other agents. Thus, agent's beliefs are characterized by the relation between its "internal" arguments supporting its beliefs and the "external" arguments supporting the contradictory beliefs of other agents. So, in a certain sense, argumentative reasoning is based on the "external stability" of acceptable arguments in the multi-agent setting. This dissertation proposes that agents evaluate arguments to obtain a consensus about a common knowledge by both proposing arguments or trying to build opposing arguments against them. Moreover, this proposal deals with incomplete knowledge (i.e. partial arguments) and so a cooperation process grants arguments to achieve knowledge completeness. Therefore, a negotiation of an agent's belief is seen as an argumentation-based process with cooperation; both cooperation and argumentation are seen as interlaced processes. Furthermore, each agent Ag has both set Argue of argumentative agents and set Cooperate of cooperative agents; every Ag must reach a consensus on its arguments with agents in Argue, and Ag may ask for arguments from agents in Cooperate to complete its partial arguments. The argumentation-based negotiation proposal allows the modelling a hierarchy of knowledge bases representing, for instance, a business's organization or a taxonomy of some subject, and also an MAS where each agent represents "acquired knowledge" in a different period of time. Furthermore, any agent in an MAS can be queried regarding the truth value of some belief. It depends on from which agent such a belief is inferred, and also what the specification in both Argue and Cooperate is, given the overall agents in the MAS. However, such an answer will always be consistent/paraconsistent with the agents' knowledge base involved. This dissertation proposes a (declarative and operational) argumentation semantics for an agent's knowledge base. Furthermore, it proposes a declarative argumentation-based negotiation semantics for a multi-agent setting, which uses most of the definitions from the former semantics

    Combining design and performance in a data visualization management system

    Get PDF
    Interactive data visualizations have emerged as a prominent way to bring data exploration and analysis capabilities to both technical and non-technical users. Despite their ubiquity and importance across applications, multiple design- and performance-related challenges lurk beneath the visualization creation process. To meet these challenges, application designers either use visualization systems (e.g., Endeca, Tableau, and Splunk) that are tailored to domain-specific analyses, or manually design, implement, and optimize their own solutions. Unfortunately, both approaches typically slow down the creation process. In this paper, we describe the status of our progress towards an end-to-end relational approach in our data visualization management system (DVMS). We introduce DeVIL, a SQL-like language to express static as well as interactive visualizations as database views that combine user inpu

    Aspect-Oriented State Machines

    Get PDF
    UML state machines are a widely used language for modeling software behavior. They are considered to be simple and intuitively comprehensible, and are hence one of the most popular languages for modeling reactive components. However, this seeming ease to use vanishes rapidly as soon as the complexity of the system to model increases. In fact, even state machines modeling ``almost trivial'' behavior may get rather hard to understand and error-prone. In particular, synchronization of parallel regions and history-based features are often difficult to model in UML state machines. We therefore propose High-Level Aspect (HiLA), a new, aspect-oriented extension of UML state machines, which can improve the modularity, thus the comprehensibility and reusability of UML state machines considerably. Aspects are used to define additional or alternative system behaviors at certain ``interesting'' points of time in the execution of the state machine, and achieve a high degree of separation of concerns. The distinguishing feature of HiLA w.r.t. other approaches of aspect-oriented state machines is that HiLA aspects are defined on a high, i.e. semantic level as opposed to a low, i.e. syntactic level. This semantic approach makes \HiLA aspects often simpler and better comprehensible than aspects of syntactic approaches. The contributions of this thesis include 1) the abstract and the concrete syntax of HiLA, 2) the weaving algorithms showing how the (additional or alternative) behaviors, separately modeled in aspects, are composed with the base state machine, giving the complete behavior of the system, 3) a formal semantics for HiLA aspects to define how the aspects are activated and (after the execution) left. We also discuss what conflicts between HiLA aspects are possible and how to detect them. The practical applicability of HiLA is shown in a case study of a crisis management system

    Reconciling while Tolerating Disagreement in Collaborative Data Sharing

    Get PDF
    In many data sharing settings, such as within the biological and biomedical communities, global data consistency is not always attainable: different sites\u27 data may be dirty, uncertain, or even controversial. Collaborators are willing to share their data, and in many cases they also want to selectively import data from others - but must occasionally diverge when they disagree about uncertain or controversial facts or values. For this reason, traditional data sharing and data integration approaches are not applicable, since they require a globally \emph{consistent} data instance. Additionally, many of these approaches do not allow participants to make updates; if they do, concurrency control algorithms or inconsistency repair techniques must be used to ensure a consistent view of the data for all users. In this paper, we develop and present a fully decentralized model of collaborative data sharing, in which participants publish their data on an ad hoc basis and simultaneously reconcile updates with those published by others. Individual updates are associated with provenance information, and each participant accepts only updates with a sufficient authority ranking, meaning that each participant may have a different (though conceptually overlapping) data instance. We define a consistency semantics for database instances under this model of disagreement, present algorithms that perform reconciliation for distributed clusters of participants, and demonstrate their ability to handle typical update and conflict loads in settings involving the sharing of curated data
    corecore