the efficient serialization and deserialization of data is a fundamental operation in many grid systems. Some serializers are message-based, while others are stream-based with no inherent message boundaries. Streaming...
详细信息
ISBN:
(纸本)9780889867048
the efficient serialization and deserialization of data is a fundamental operation in many grid systems. Some serializers are message-based, while others are stream-based with no inherent message boundaries. Streaming serializers can be more scalable and flexible than message-oriented serializers, by promoting free form conversations not fixed to any particular static structure. this paper presents the design and implementation of the XBS binary serializer, focusing on three important features: efficient serialization of large and small arrays, efficient pass-through of opaque data by grid intermediaries, and efficient representation of numbers with a large dynamic range. the first feature is important because such arrays dominate scientific computing. the second feature is useful for grid intermediaries such as gateways and proxies, which are becoming ever more important as grid systems become more complex, and focus support on legacy applications. the third feature is important for efficiently supporting systems without arbitrary size limits. XBS is a freely-available C++ library and provides an object-oriented API, based on generic programming techniques.
this paper presents an approach to automated generation of executable test code from class models represented by the UML protocol state machines. It supports several coverage criteria for state models, including state...
详细信息
this paper presents an approach to automated generation of executable test code from class models represented by the UML protocol state machines. It supports several coverage criteria for state models, including state coverage, transition coverage, and basic and extended round-trip coverage. It allows the tester to add and modify detailed test parameters (e. g., actual arguments for method invocations and implementation-specific environments) if necessary. When the state model is modified due to requirements change, the hand-crafted test parameters, if still valid, are automatically reused. this reduces the working load for regeneration of tests for modified models. In addition to test code, we also automatically generate state wrapper aspects in AspectJ, which facilitates comparing actual object states to expected states during test execution. this enables the automated verdict of pass/failure for test cases without the need to modify the source code of the class under test. We present two examples for which the executable test code is generated. they demonstrate the reuse of test parameters and testing of object interactions, respectively.
To be cost effective, the decision to automate tests that are usually hand-executed has to rely on a tradeoff between the time consumed to build the automation infrastructure and the time actually saved by the automat...
详细信息
Networked systems consisting of many different components are gaining more and more importance in human's living environment (e.g. communication, entertainment, building automation). the design process for such sy...
详细信息
ISBN:
(纸本)9781479948451
Networked systems consisting of many different components are gaining more and more importance in human's living environment (e.g. communication, entertainment, building automation). the design process for such systems is also harder because of the growing complexity and the inhomogeneity of sub-systems realizing different functions. this results in a multi-criteria high-complex combinatorial device selection problem. In this paper a general domain-independent model for Component-based Automation Systems is introduced. To help solving the mentioned selection problem, it is transformed into an Exact Cover Problem. thus, it is possible to use efficient algorithms like Knuth's Dancing Links for solving the selection problem.
Multi-paradigm languages are becoming more and more popular, as they allow developers to choose the most suitable paradigm for each task. Most commonly, we observe the combination of object-oriented (OOP) and function...
详细信息
A computer based photoplethysmographic analyzer was developed. the signal was obtained by infrared light through the finger. It was converted into digital domain by a signal processing circuitry, which contains amplif...
详细信息
this paper reports on the design and implementation of Chianti, a change impact analysis tool for Java that is implemented in the context of the Eclipse environment. Chianti analyzes two versions of an application and...
详细信息
this paper reports on the design and implementation of Chianti, a change impact analysis tool for Java that is implemented in the context of the Eclipse environment. Chianti analyzes two versions of an application and decomposes their difference into a set of atomic changes. Change impact is then reported in terms of affected (regression or unit) tests whose execution behaviour may have been modified by the applied changes. For each affected test, Chianti also determines a set of affecting changes that were responsible for the test's modified behaviour. this latter step of isolating the changes that induce the failure of one specific test from those changes that only affect other tests can be used as a debugging technique in situations where a test fails unexpectedly after a long editing session. We evaluated Chianti on a year (2002) of CVS data from M. Ernst's Daikon system, and found that, on average, 52% of Daikon's unit tests are affected. Furthermore, each affected unit test, on average, is affected by only 3.95% of the atomic changes. these findings suggest that our change impact analysis is a promising technique for assisting developers with program understanding and debugging.
暂无评论