|
C O N T E N T S LEVENTE HUNYADI, ISTVÁN VAJK: An identification approach to dynamic errors-in-variables systems with a preliminary clustering of observations,
Download in PDF
pp. 127-135.
EMESE SZÁDECZKY-KARDOSS, BÁLINT KISS: Designing a tracking controller for passenger cars with steering input,
Download in PDF
pp. 137-144.
LEVENTE ERŐS, FERENC BOZÓKI: Test component assignment and scheduling in a load testing environment,
Download in PDF
pp. 145-152.
LAJOS JENŐ FÜLÖP, PÉTER HEGEDŰS, RUDOLF FERENC: BEFRIEND - a benchmark for evaluating reverse engineering tools,
Download in PDF
pp. 153-162.
JUDIT JÁSZ: Static Execute After algorithms as alternatives for impact analysis,
Download in PDF
pp. 163-176.
ISTVÁN SIKET: Evaluating the effectiveness of object-oriented metrics for bug prediction,
Download in PDF
pp. 177-186.
ZALÁN SZŰGYI, ZOLTÁN PORKOLÁB: Necessary test cases for Decision Coverage and Modified Condition / Decision Coverage,
Download in PDF
pp. 187-195.
PÉTER ARATÓ, BENCE CSÁK: Pipeline mode in C-based direct hardware implementation,
Download in PDF
pp. 197-208.
A B S T R A C T S LEVENTE HUNYADI, ISTVÁN VAJK: An identification approach to dynamic errors-in-variables systems with a preliminary clustering of observations,
Download in PDF
pp. 127-135.
Errors-in-variables models are statistical models in which not only dependent but also independent variables are observed with error, i.e. they exhibit a symmetrical model structure in terms of noise. The application field for these models is diverse including computer vision, image reconstruction, speech and audio processing, signal processing, modal and spectral analysis, system identification, econometrics and time series analysis. This paper explores applying the errors-in-variables approach to parameter estimation of discrete-time dynamic linear systems. In particular, a framework is introduced in which a preliminary separation step is applied to group observations prior to parameter estimation. As a result, instead of one, two sets of estimates are derived simultaneously, comparing which can yield estimates for noise parameters. The proposed approach is compared to other schemes with simulation examples.
EMESE SZÁDECZKY-KARDOSS, BÁLINT KISS: Designing a tracking controller for passenger cars with steering input,
Download in PDF
pp. 137-144.
The results presented in the paper were motivated by a practical application. The goal was to design a parking assist system for a passenger car such that the assist is realized by controlling the steering wheel while the human driver handles the pedals (throttle, clutch and brake pedals) of the vehicle and thus generates its velocity. The tracking control of the car with the single steering input is achieved by a novel time-scaling based controller. The solution was tested in simulations and also in a real vehicle.
LEVENTE ERŐS, FERENC BOZÓKI: Test component assignment and scheduling in a load testing environment,
Download in PDF
pp. 145-152.
In this paper we introduce two major problems from the field of load (or performance) testing and our solutions for them. When testing the performance of a device (System Under Test - SUT), the test environment executes many software entities (the so-called test components) on the hosts of the test environment (testing hosts). Our goal is to maximize the load on the testing hosts by assigning the test components to them closely to optimal. The first problem to be solved is, thus, a special case of the task assignment problem for which many algorithms have been developed. Our solutions presented in this paper are, however, optimized for distributing load testing traffic in the case of which the possibilities and restrictions to be taken into account are very different from those of the classical task assignment case. The other problem we deal with is how to schedule test components running on the same testing host. Most of the papers written on scheduling focus on the characteristics of the generated load, bu
t not on the way of generating it. These papers usually assume that the load can be generated by improving hardware resources. In this paper, however, we introduce a model and an algorithm which improves the efficiency of scheduling in a load testing environment with way less hardware resources. The algorithm is based on our novel concept of virtual threads. Our simulations have shown that by applying our solutions, the efficiency of load testing can be significantly increased.
LAJOS JENŐ FÜLÖP, PÉTER HEGEDŰS, RUDOLF FERENC: BEFRIEND - a benchmark for evaluating reverse engineering tools,
Download in PDF
pp. 153-162.
Reverse engineering tools analyze the source code of a software system and produce various results, which usually point back to the original source code. Such tools are e.g. design pattern miners, duplicated code detectors and coding rule violation checkers. Most of the time these tools present their results in different formats, which makes them very difficult to compare.
In this paper, we present work in progress towards implementing a benchmark called BEFRIEND (BEnchmark For Reverse engInEering tools workiNg on source coDe) with which the outputs of reverse engineering tools can be easily and efficiently evaluated and compared. It supports different kinds of tool families, programming languages and software systems, and it enables the users to define their own evaluation criteria. Furthermore, it is a freely available web-application open to the community. We hope that in the future it will be accepted and used by the community members to evaluate and compare their tools with each other.
JUDIT JÁSZ: Static Execute After algorithms as alternatives for impact analysis,
Download in PDF
pp. 163-176.
Impact analysis plays an important role in many software engineering tasks such as software maintenance, regression testing and debugging. In this paper, we present a static method to compute the impact sets of particular program points. For large programs, this method is more effective than the slightly more precise slicing. Our technique can also be used on larger programs with over thousands of lines of code where no slicers can be applied since the determination of the program dependence graphs, which are the bases of slicing, is an especially expensive task. As a result, our method could be efficiently used in the field of impact analysis.
ISTVÁN SIKET: Evaluating the effectiveness of object-oriented metrics for bug prediction,
Download in PDF
pp. 177-186.
In our experiments we examined the general relationship between object-oriented metrics and the fault-proneness of classes. We analyzed a large open-source program called Mozilla, calculated 58 object-oriented metrics for Mozilla at the class level \cite FSG04, collected the reported and corrected bugs from the bug tracking system of Mozilla and associated them with the classes. We applied logistic regression to examine which metrics could be used to predict the fault proneness of the classes. We found that 17 of the 58 object-oriented metrics were useful predictors, but to a different extent. The CBO (Coupling Between Object classes) metric was the best, but it was only slightly better than NOI (Number of Outgoing Invocations) and RFC (Response Set for a Class), which proved useful as well.
We also examined the metrics in terms of their categories and we found that coupling metrics were the best predictors for finding bugs, but the complexity and size metrics also gave good results. On the other hand, in tests all the inheritance-related metrics were statistically insignificant.
ZALÁN SZŰGYI, ZOLTÁN PORKOLÁB: Necessary test cases for Decision Coverage and Modified Condition / Decision Coverage,
Download in PDF
pp. 187-195.
Test coverage refers to the extent to which a given software verification activity satisfies its objectives. Several types of coverage analysis exist to check code correctness. Less strict analysis methods require fewer test cases to satisfy their requirements and consume less resources. Choosing test methods is a compromise between the code correctness and the available resources. However this selection should be based on quantitative consideration. In this paper we concern the Decision Coverage and the more strict Modified Condition / Decision Coverage. We examined several projects written in Ada programming language. Some of them are developed in the industry and the others are open source. We analyzed them in several aspects: Mc- Cabe metric, nesting and maximal argument number in decisions. We discuss how these aspects are affected by difference of the necessary test cases for these testing methods.
PÉTER ARATÓ, BENCE CSÁK: Pipeline mode in C-based direct hardware implementation,
Download in PDF
pp. 197-208.
In this paper a methodology is presented that enables the pipeline function of hardware blocks created by C-based direct hardware design. The method is embedded into the C-based design methodology worked out by the authors earlier. This pipeline enabling method is rather flexible, needs no special efforts. With the help of a simple state-machine-based entity, blocks of different execution times can build up the pipeline, even with data-dependent duration. A data-spreading technique solves data consistency. Pipeline sectioning - chosing the right and balanced granularity versus pipelining overhead - is an optimisation matter. Simulation results prove the correctness of the method.
|