46,185 research outputs found
Abstracting object interactions using composition filters
It is generally claimed that object-based models are very suitable for building distributed system architectures since object interactions follow the client-server model. To cope with the complexity of today's distributed systems, however, we think that high-level linguistic mechanisms are needed to effectively structure, abstract and reuse object interactions. For example, the conventional object-oriented model does not provide high-level language mechanisms to model layered system architectures. Moreover, we consider the message passing model of the conventional object-oriented model as being too low-level because it can only specify object interactions that involve two partner objects at a time and its semantics cannot be extended easily. This paper introduces Abstract Communication Types (ACTs), which are objects that abstract interactions among objects. ACTs make it easier to model layered communication architectures, to enforce the invariant behavior among objects, to reduce the complexity of programs by hiding the interaction details in separate modules and to improve reusability through the application of object-oriented principles to ACT classes. We illustrate the concept of ACTs using the composition filters model
From Functions to Object-Orientation by Abstraction
In previous work we developed a framework of computational models for
function and object execution. The models on an higher level of abstraction in
this framework allow for concurrent execution of functions and objects. We show
that the computational model for object execution complies with the
fundamentals of object-orientation.Comment: arXiv admin note: text overlap with arXiv:1010.3100, arXiv:1111.5172,
arXiv:1208.334
Analogy Mining for Specific Design Needs
Finding analogical inspirations in distant domains is a powerful way of
solving problems. However, as the number of inspirations that could be matched
and the dimensions on which that matching could occur grow, it becomes
challenging for designers to find inspirations relevant to their needs.
Furthermore, designers are often interested in exploring specific aspects of a
product-- for example, one designer might be interested in improving the
brewing capability of an outdoor coffee maker, while another might wish to
optimize for portability. In this paper we introduce a novel system for
targeting analogical search for specific needs. Specifically, we contribute a
novel analogical search engine for expressing and abstracting specific design
needs that returns more distant yet relevant inspirations than alternate
approaches
Automating Object Transformations for Dynamic Software Updating via Online Execution Synthesis
Dynamic software updating (DSU) is a technique to upgrade a running software system on the fly without stopping the system. During updating, the runtime state of the modified components of the system needs to be properly transformed into a new state, so that the modified components can still correctly interact with the rest of the system. However, the transformation is non-trivial to realize due to the gap between the low-level implementations of two versions of a program. This paper presents AOTES, a novel approach to automating object transformations for dynamic updating of Java programs. AOTES bridges the gap by abstracting the old state of an object to a history of method invocations, and re-invoking the new version of all methods in the history to get the desired new state. AOTES requires no instrumentation to record any data and thus has no overhead during normal execution. We propose and implement a novel technique that can synthesize an equivalent history of method invocations based on the current object state only. We evaluated AOTES on software updates taken from Apache Commons Collections, Tomcat, FTP Server and SSHD Server. Experimental results show that AOTES successfully handled 51 of 61 object transformations of 21 updated classes, while two state-of-the-art approaches only handled 11 and 6 of 61, respectively
A Critical Look at the Abstraction Based on Macro-Operators
Abstraction can be an effective technique for dealing with
the complexity of planning tasks. This paper is aimed at assessing and
identifying in which cases abstraction can actually speed-up the overall
search. In fact, it is well known that the impact of abstraction on the
time spent to search for a solution of a planning problem can be positive
or negative, depending on several factors -including the number of objects
defined in the domain, the branching factor, and the plan length.
Experimental results highlight the role of such aspects on the overall performance
of an algorithm that performs the search at the ground-level
only, and compares them with the ones obtained by enforcing abstraction
Portunes: generating attack scenarios by finding inconsistencies between security policies in the physical, digital and social domain
The security goals of an organization are implemented through security policies, which concern physical security, digital security and security awareness.
An insider is aware of these security policies, and might be able to thwart the security goals without violating any policies, by combining physical, digital and social means.
This paper presents the Portunes model, a model for describing and analyzing attack scenarios across the three security areas. Portunes formally describes security alignment of an organization and finds attack scenarios by analyzing inconsistencies between policies from the different security areas. For this purpose, the paper defines a language in the tradition of the Klaim family of languages, and uses graph-based algorithms to find attack scenarios that can be described using the defined language
- …