2813515
Re-factoring Middleware Systems: A Case Study
Aspect oriented programming brings us new design perspectives since it permits the superimpositions of multiple abstraction models on top of one another. It is a very powerful technique in separating and simplifying design concerns. In this paper, we provide detailed descriptions of our aspect oriented re-factoring of ORBacus, an industrial strength CORBA implementation. The re-factored features are the dynamic programming interface, support for portable interceptors, invocations of local objects. Their associated IDL-level re-factorization is addressed by an aspect-aware IDL compiler. In addition, we present the quantification for the changes in terms of both the structural complexity and the runtime performance. The aspect oriented re-factorization proves that AOP is capable of composing non-trivial functionality of middleware in a superimposing manner. The final “woven” system is able to correctly provide both the fundamental functionality and the “aspectized” functionality with negligible overhead and leaner architecture. Furthermore, the “aspectized” feature can be configured in and out during compile-time, which greatly enhances the configurability of the architecture.
2272663
Refactoring Middleware with Aspects
Middleware platforms, such as Web services, J2EE, CORBA, and DCOM, have become increasingly popular during the last decade. They have been very successful in solving distributed computing problems for a large family of application domains. The architecture of middleware systems have gone through many significant cycles of evolution, both in terms of the completeness of functionality and the range of adoptions for different types of platforms. However, at the same time, it is getting increasingly difficult to achieve and to maintain a high level of adaptability and configurability because the structure of the middleware architecture is becoming overly complicated and rigid. We attribute that problem to the limitations of traditional software decomposition methods. Aspect-oriented programming, on the contrary, has introduced new design perspectives that permit the superimpositions of different abstraction models on top of one another. This is a very powerful technique for separating and simplifying design concerns. In our effort of applying principles of aspect orientation to the middleware architecture, we first pragmatically analyze the use of aspects in the middleware architecture. We then show that aspects are the correct remedy for the above outlined middleware problems by quantifying crosscutting concerns in the legacy implementations of several prominent middleware systems. Our aspect analysis results strongly indicate that modularity of middleware architecture is greatly hindered by the wide existence of tangled logic. To go one step further, we factor out a number of crosscutting concerns identified in the mining process, reimplement them as aspects, and superimpose them back into the refactored architecture. This allows us to use a set of software engineering metrics to quantify the refactorization in terms of changes in the structural complexity, modularity, and performance of the resulting system. This aspect-oriented refactoring proves that aspect orientation is capable of composing orthogonal design requirements. The final "woven" system is able to correctly provide both the fundamental functionality and the "aspectized" functionality with negligible overhead and an overall leaner architecture. Furthermore, the "aspectized" feature can be configured in and out during compile-time, which greatly enhances the configurability of the architecture.
1804026
PRISM is research in aSpect mining
Aspect oriented programming (AOP) provides programmers with a new level of modularization capability. Although improving the aspect oriented languages seems to be the most eminent task, we recognize that it is equally important for (professional) software developers to properly leverage the power of AOP and to apply AOP at large scales. As many researchers have realized, one of the best ways to assess the practicality of AOP is to retrofit AOP onto legacy software systems [6, 7, 1]. One of the important activities in doing so is aspect mining. Aspect mining aims at finding non-localized programming concerns of very large software systems, which in turn provide opportunities for aspect oriented modularization and aspect oriented refactoring. Existing work of aspect mining focuses on aspect visualization and aspect browsing [3, 2]. These tools often involve tedious human interactions for complex pattern definition over large code base. Inspired by AMT [3], AMTEX [5] is a step towards building an aspect mining environment which facilitates either autonomous or assisted aspect discovery. Prism is a major extension of AMTEX, which is designed for IDE integration, cross-language mining support, and multimodal analysis. Prism is also an extensible mining platform, which is open for supporting new mining techniques. The current implementation of Prism is built as an Eclipse plugin. It supports Java systems and partially supports C# programs. Through Prism, users can define complex lexical, semantic, and syntactical patterns. The Prism engine
2587849
Quantifying aspects in middleware platforms
Middleware technologies such as Web Services, CORBA and DCOM have been very successful in solving distributed computing problems for a large family of application domains. As middleware systems are getting widely adopted and more functionally mature, it is also increasingly difficult for the architecture of middleware to achieve a high level of adaptability and configurability, due to the limitations of traditional software decomposition methods. Aspect oriented programming has brought us new design perspectives because it permits the superimpositions of multiple abstraction models on top of one another. It is a very powerful technique in separating and simplifying design concerns. In this paper, we first show that, through the quantification of aspects in the legacy implementations, the modularity of middleware architecture is greatly hindered by the ubiquitous existence of tangled logic. We then go one step further by factoring out a number of aspects identified in the mining work and re-implementing them as aspect programs. The aspect oriented re-factorization allows us to apply a set of software engineering metrics to quantify the changes of the re-factored system in both the structural complexity and the runtime performance. The aspect oriented re-factoring proves that the aspect oriented programming is capable of composing orthogonal design requirements. The final "woven" system is able to correctly provide both the fundamental functionality and the "aspectized" functionality with negligible overhead and a leaner architecture. Further more, the configurability of middleware is dramatically increased because the "aspectized" features can be configured in and out during the compile-time
17440979
Generic Middleware Substrate Through Modelware
Conventional middleware architectures suffer from insufficient module-level reusability and the ability to adapt in face of functionality evolution and diversification. To overcome these deficiencies, we propose the Modelware methodology adopting the Model Driven Architecture (MDA) approach and aspect oriented programming (AOP). We advocate the use of models and views to separate intrinsic functionalities of middleware from extrinsic ones. This separation effectively lowers the concern density per component and fosters the coherence and the reuse of the components of middleware architectures. Comparing to the conventionally designed version, Modelware improves the standard benchmark performance by as much as 40% through architectural optimizations. Our evaluation also shows that Modelware considerably reduces coding efforts in supporting the funcitonal evolution of middleware and dramatically different application domains.
14409052
Shear-resize factorizations for fast image registration
Owing to its effectiveness and simplicity, intensity-based method works well for registration of images. However, it needs a large amount of computation for geometric transformation. In this paper, we present two shear-resize matrix factorizations to accelerate the transformation. A transform matrix can be factorized into two shears and a fixed non-uniform resize, or three shears and a customizable resize. A customizable resize can be uniform in all dimensions or scaling just in one dimension. Shears can be implemented very fast by memory-shift, and a resize can be done by simple axis-aligned interpolation. The factorizations can be applied to both rigid-body and affine transformations. Their efficiency is performed by experiments on some standard test images and fingerprint images. The methods are quite promising for hardware implementation, and can also be extended to 3D or higher dimensional fast geometric transformation.
8800642
Multimedia Data Mining for Traffic Video Sequences
In this paper, a multimedia data mining framework for discovering important but previously unknown knowledge such as vehicle identification, traffic flow, and the spatio-temporal relations of the vehicles at the intersections from traffic video sequences is proposed. The proposed multimedia data mining framework analyzes the traffic video sequences by using background subtraction, image/video segmentation, object tracking, and modeling with multimedia augmented transition network (MATN) model and multimedia input strings, in the domain of traffic monitoring over an intersection. The spatio-temporal relationships of the vehicle objects in each frame are discovered and accurately captured and modeled. Such an additional level of sophistication enabled by the proposed multimedia data-mining framework in terms of spatio-temporal tracking generates a capability for automation. This capability alone can significantly influence and enhance current data processing and implementation strategies for several problems vis-a-vis traffic operations. A real-life traffic video sequence is used to illustrate the effectiveness of the proposed multimedia data mining framework.
80453
Chords of longest circuits in locally planar graphs
It was conjectured by Thomassen ([B. Alspach, C. Godsil, Cycle in graphs, Ann. Discrete Math. 27 (1985)], p. 466) that every longest circuit of a 3-connected graph must have a chord. This conjecture is verified for locally 4-connected planar graphs, that is, let N be the set of natural numbers; then there is a function h : N → N such that, for every 4-connected graph G embedded in a surface S with Euler genus g and face-width at least h(g), every longest circuit of G has a chord.
9768130
Maximum Likelihood Study for Sound Pattern Separation and Recognition
The increasing needs of content-based automatic indexing for large musical repositories have led to extensive investigation in musical sound pattern recognition. Numerous acoustical sound features have been developed to describe the characteristics of a sound piece. Many of these features have been successfully applied to monophonic sound timbre recognition. However, most of those features failed to describe enough characteristics of polyphonic sounds for the purpose of classification, where sound patterns from different sources are overlapping with each other. Thus, sound separation technique is needed to process polyphonic sounds into monophonic sounds before feature extraction. In this paper, we proposed a novel sound source separation and estimation system to isolate sound sources by maximum likelihood fundamental frequency estimation and pattern matching of a harmonic sequence in our feature database.
10838244
Streaming SMIL Presentations via a Multimedia Semantic Model
The Synchronized Multimedia Integration Language (SMIL) allows Web designers to design complicated and vivid multimedia presentations in a declarative manner. In this paper, an abstract semantic model called Multimedia Augmented Transition Network (MATN) is used to model the conceptual structure of SMIL, as well as the temporal relations and synchronization control. The advantages of using the MATN model are its simplicity and ease of modification (scalability). Users can easily generate their favorite multimedia presentations using MATNs and render them using the SMIL players. Since the SMIL specification is quite new to the Internet society, the functionality of the players is limited, i.e., they often acquire proprietary platforms or cannot deal with MPEG or RTP media objects. Another contribution of this paper is to propose a novel architecture based on Java JMF technology for tackling with such constraints.