95,753 research outputs found
Open Programming Language Interpreters
Context: This paper presents the concept of open programming language
interpreters and the implementation of a framework-level metaobject protocol
(MOP) to support them. Inquiry: We address the problem of dynamic interpreter
adaptation to tailor the interpreter's behavior on the task to be solved and to
introduce new features to fulfill unforeseen requirements. Many languages
provide a MOP that to some degree supports reflection. However, MOPs are
typically language-specific, their reflective functionality is often
restricted, and the adaptation and application logic are often mixed which
hardens the understanding and maintenance of the source code. Our system
overcomes these limitations. Approach: We designed and implemented a system to
support open programming language interpreters. The prototype implementation is
integrated in the Neverlang framework. The system exposes the structure,
behavior and the runtime state of any Neverlang-based interpreter with the
ability to modify it. Knowledge: Our system provides a complete control over
interpreter's structure, behavior and its runtime state. The approach is
applicable to every Neverlang-based interpreter. Adaptation code can
potentially be reused across different language implementations. Grounding:
Having a prototype implementation we focused on feasibility evaluation. The
paper shows that our approach well addresses problems commonly found in the
research literature. We have a demonstrative video and examples that illustrate
our approach on dynamic software adaptation, aspect-oriented programming,
debugging and context-aware interpreters. Importance: To our knowledge, our
paper presents the first reflective approach targeting a general framework for
language development. Our system provides full reflective support for free to
any Neverlang-based interpreter. We are not aware of any prior application of
open implementations to programming language interpreters in the sense defined
in this paper. Rather than substituting other approaches, we believe our system
can be used as a complementary technique in situations where other approaches
present serious limitations
Experiences in Integrated Multi-Domain Service Management
Increased competition, complex service provision chains and integrated service offerings require effective techniques for the rapid integration of telecommunications services and management systems over multiple organisational domains. This paper presents some of the results of practical development work in this area, detailing the technologies and standards used, the architectural approach taken and the application of this approach to specific services. This work covers the integration of multimedia services, broadband networks, service management and network management, though the detailed examples given focus specifically on the integration of services and service management
Inter-Domain Integration of Services and Service Management
The evolution of the global telecommunications industry into an open services market presents developers of telecommunication service and management systems with many new challenges. Increased competition, complex service provision chains and integrated service offerings require effective techniques for the rapid integration of service and management systems over multiple organisational domains. These integration issues have been examined in the ACTS project Prospect by developing a working set of integrated, managed telecommunications services for a user trial. This paper presents the initial results of this work detailing the technologies and standards used, the architectural approach taken and the application of this approach to specific services
Knowledgezoom for java: A concept-based exam study tool with a zoomable open student model
This paper presents our attempt to develop a personalized exam preparation tool for Java/OOP classes based on a fine-grained concept model of Java knowledge. Our goal was to explore two most popular student model-based approaches: open student modeling and problem sequencing. The result of our work is a Java exam preparation tool, Knowledge Zoom. The tool combines an open concept-level student model component, Knowledge Explorer and a concept-based sequencing component, Knowledge Maximizer into a single interface. This paper presents both components of Knowledge Zoom, reports results of its evaluation, and discusses lessons learned. © 2013 IEEE
Recommended from our members
Towards an aspect weaving BPEL engine
This position paper proposes the use of dynamic aspects and
the visitor design pattern to obtain a highly configurable and
extensible BPEL engine. Using these two techniques, the
core of this infrastructural software can be customised to
meet new requirements and add features such as debugging,
execution monitoring, or changing to another Web Service
selection policy. Additionally, it can easily be extended to
cope with customer-specific BPEL extensions. We propose
the use of dynamic aspects not only on the engine itself
but also on the workflow in order to tackle the problems of
Web Service hot deployment and hot fixes to long running
processes. In this way, composing aWeb Service "on-the-fly"
means weaving its choreography interface into the workflow
Using real options to select stable Middleware-induced software architectures
The requirements that force decisions towards building distributed system architectures are usually of a non-functional nature. Scalability, openness, heterogeneity, and fault-tolerance are examples of such non-functional requirements. The current trend is to build distributed systems with middleware, which provide the application developer with primitives for managing the complexity of distribution, system resources, and for realising many of the non-functional requirements. As non-functional requirements evolve, the `coupling' between the middleware and architecture becomes the focal point for understanding the stability of the distributed software system architecture in the face of change. It is hypothesised that the choice of a stable distributed software architecture depends on the choice of the underlying middleware and its flexibility in responding to future changes in non-functional requirements. Drawing on a case study that adequately represents a medium-size component-based distributed architecture, it is reported how a likely future change in scalability could impact the architectural structure of two versions, each induced with a distinct middleware: one with CORBA and the other with J2EE. An option-based model is derived to value the flexibility of the induced-architectures and to guide the selection. The hypothesis is verified to be true for the given change. The paper concludes with some observations that could stimulate future research in the area of relating requirements to software architectures
- …