2,092 research outputs found
Meta-programming composers in 2nd generation component systems
Future component systems will require that components can be composed
flexibly. In contrast to current systems which only support a fixed set of
composition mechanisms, the component system should provide a composition
language in which users can define their own specific composers. It is
argued for an object-oriented setting that this will be possible by
meta-programming the class-graph.
Composers will be based on two important elements. First, they will express
coupling by graph-based operators which transform parts of the class-graph
(coupling design patterns). Second, during these transformations, elementary
meta-operators will be used to transform data and code, rearranging slots and
methods of parameter-components. Thus during their reuse, components are
queried by introspection and transformed by meta-programming.
Composers that use meta-programming generalize connectors in architectural
languages. Hence they encapsulate context-dependent aspects of a system, and
make components independent of their embedding context. Since
meta-programming composers may change behavior of components transparently,
meta-programming composers will lead to a nice form of grey-box reuse, which
supports embedding of components (and classes) into application contexts in a
new and flexible way
Modular System for Shelves and Coasts (MOSSCO v1.0) - a flexible and multi-component framework for coupled coastal ocean ecosystem modelling
Shelf and coastal sea processes extend from the atmosphere through the water
column and into the sea bed. These processes are driven by physical, chemical,
and biological interactions at local scales, and they are influenced by
transport and cross strong spatial gradients. The linkages between domains and
many different processes are not adequately described in current model systems.
Their limited integration level in part reflects lacking modularity and
flexibility; this shortcoming hinders the exchange of data and model components
and has historically imposed supremacy of specific physical driver models. We
here present the Modular System for Shelves and Coasts (MOSSCO,
http://www.mossco.de), a novel domain and process coupling system
tailored---but not limited--- to the coupling challenges of and applications in
the coastal ocean. MOSSCO builds on the existing coupling technology Earth
System Modeling Framework and on the Framework for Aquatic Biogeochemical
Models, thereby creating a unique level of modularity in both domain and
process coupling; the new framework adds rich metadata, flexible scheduling,
configurations that allow several tens of models to be coupled, and tested
setups for coastal coupled applications. That way, MOSSCO addresses the
technology needs of a growing marine coastal Earth System community that
encompasses very different disciplines, numerical tools, and research
questions.Comment: 30 pages, 6 figures, submitted to Geoscientific Model Development
Discussion
Developing a Generic Debugger for Advanced-Dispatching Languages
Programming-language research has introduced a considerable number of advanced-dispatching mechanisms in order to improve modularity. Advanced-dispatching mechanisms allow changing the behavior of a function without modifying their call sites and thus make the local behavior of code less comprehensible. Debuggers are tools, thus needed, which can help a developer to comprehend program behavior but current debuggers do not provide inspection of advanced-\ud
dispatching-related language constructs. In this paper, we present a debugger which extends a traditional Java debugger with the ability of debugging an advanced-dispatching language constructs and a user interface for inspecting this
Recommended from our members
USAP 1989 Cruise IV R/V Polar Duke, Cruise Report
This is a report for the 1989 R/V Polar Duke scientific cruise, PD IV-89 (also known as PD8904), around the Antarctic Peninsula. The cruise collected single-channel seismic data, piston cores, and heatflow data.National Science Foundation's Office of Polar ProgramsInstitute for Geophysic
Reconstruction of Software Component Architectures and Behaviour Models using Static and Dynamic Analysis
Model-based performance prediction systematically deals with the evaluation of software performance to avoid for example bottlenecks, estimate execution environment sizing, or identify scalability limitations for new usage scenarios. Such performance predictions require up-to-date software performance models. This book describes a new integrated reverse engineering approach for the reconstruction of parameterised software performance models (software component architecture and behaviour)
Toolbox for development and validation of grey-box building models for forecasting and control
As automatic sensing and information and communication technology get cheaper, building monitoring data becomes easier to obtain. The availability of data leads to new opportunities in the context of energy efficiency in buildings. This paper describes the development and validation of a data-driven grey-box modelling toolbox for buildings. The Python toolbox is based on a Modelica library with thermal building and Heating, Ventilation and Air-Conditioning models and the optimization framework in JModelica.org. The toolchain facilitates and automates the different steps in the system identification procedure, like data handling, model selection, parameter estimation and validation. To validate the methodology, different grey-box models are identified for a single-family dwelling with detailed monitoring data from two experiments. Validated models for forecasting and control can be identified. However, in one experiment the model performance is reduced, likely due to a poor information content in the identification data set
Test Case Optimization and Redundancy Reduction Using GA and Neural Networks
More than 50% of software development effort is spent in testing phase in a typical software development project. Test case design as well as execution consume a lot of time. Hence, automated generation of test cases is highly required. Here a novel testing methodology is being presented to test object-oriented software based on UML state chart diagrams. In this approach, function minimization technique is being applied and generate test cases automatically from UML state chart diagrams. Software testing forms an integral part of the software development life cycle. Since the objective of testing is to ensure the conformity of an application to its specification, a test “oracle” is needed to determine whether a given test case exposes a fault or not. An automated oracle to support the activities of human testers can reduce the actual cost of the testing process and the related maintenance costs. In this paper, a new concept is being presented using an UML state chart diagram and tables for the test case generation, artificial neural network as an optimization tool for reducing the redundancy in the test case generated using the genetic algorithm. A neural network is trained by the back-propagation algorithm on a set of test cases applied to the original version of the system
Modeling Software Components Using Behavior Protocols
This thesis proposes a novel approach for a description of a software component's behavior. The behavior is specified by using behavior protocols - a notation similar to regular expressions, which is easy to read and comprehend
- …