Pattern-based Reengineering of Software Systems - Meyer, Matthias (Proceedings of the 13th Working Conference on Reverse Engineering (WCRE 2006), Benevento, Italy)

A Prototype for Guideline Checking and Model Transformation in Matlab/Simulink - Giese, Holger; Meyer, Matthias; Wagner, Robert (Proc. of the 4th International Fujaba Days 2006, Bayreuth, Germany)

On Semantic Issues in Story Diagrams - Tichy, Matthias; Meyer, Matthias; Giese, Holger (Proc. of the 4th International Fujaba Days 2006, Bayreuth, Germany)

Entwicklung von Geschäftsprozessmustern zur Qualitätssicherung - Holtmann, Jörg

Selective Tracing for Dynamic Analyses - Meyer, Matthias; Wendehals, Lothar (Proc. of the 1st Workshop on Program Comprehension through Dynamic Analysis (PCODA), co-located with the 12th WCRE, Pittsburgh, Pennsylvania, USA)
Reverse engineering based on dynamic analyses often uses method traces of the program under analysis. Recording all method traces during a program's execution produces too much data, though for most analyses, a 'slice' of all method traces is sufficient. In this paper, we present an approach to collect runtime information by selectively recording method calls during a program's execution. Only relevant classes and methods are monitored to reduce the amount of information. We developed the JavaTracer which we use for the recording of method calls in Java programs.

Calculation and Visualization of Software Product Metrics - Meyer, Matthias; Niere, Jörg (Proc. of the 3rd International Fujaba Days 2005, Paderborn, Germany)
The paper presents a further step of the Fujaba Tool Suite RE to support coarse-grained analyses based on metrics and especially polymetric views. Polymetric views are graphical representations of certain metric combinations. Following an interactive reverse engineering approach, polymetric views can be created on demand. The reverse engineer is able to define new polymetric view descriptions and create new views afterwards.

Generation of Type Safe Association Implementations - Travkin, Dietrich; Meyer, Matthias (Proc. of the 3rd International Fujaba Days 2005, Paderborn, Germany)
Model driven development facilitates the specification of software models from which code can be generated automatically. In practice, a software system can often not be modelled completely. Developers still have to implement parts of it manually and thus have to work with the generated code. Therefore, the usability of the code is important. The Fujaba Tool Suite is a UML case tool which allows to model the structure and behaviour of a system with UML diagrams and to generate Java code for the specifications. However, the code currently generated for associations is not type safe. Furthermore, a lot of code is added to the implementation of the model classes which decreases their usability. In this paper, we present an approach to generate type safe association implementations in Java which also improves the readability and usability of the generated code.

User-driven adaption in rule-based pattern recognition - Niere, Jörrg; Meyer, Matthias; Wendehals, Lothar
Today, in software intensive projects a huge amount of the budget flows into the analysis of the already existing system. The reason for the high costs results mainly from the fact that analyses are often made manually or with automatic tool support, which is inappropriate for analyzing large systems. Semi-automatic analysis approaches usually use a notion of fuzziness to overcome this limitation, but inherit the problem of selecting appropriate initial values. In this paper we present an approach to adapt the initial values of our semi-automatic reverse engineering process. We provide the reverse engineer with accuracy information for results produced by a rule-based inference algorithm. Based on the changes of the results done by the reverse engineer we automatically adapt a credibility value of each rule, which previously has been used to compute the accuracy of the result. The adaption fits seamlessly into our overall analysis process. First tests show that it is suitable for the calibration of our fuzzyfied rule-based pattern recognition approach.

Teaching Object-Oriented Concepts with Eclipse - Meyer, Matthias; Wendehals, Lothar (Proc. of the Eclipse Technology eXchange Workshop (ETX), Satellite Event of the 19th Conference on Object-Oriented Programming, Systems, Languages, and Applications (OOPSLA), Vancouver, Canada)
Object-oriented software development is a subject area difficult to teach, espcially to beginners. They face a lot of abstraction and (from a beginners point of view) isolated topics, such as the syntax and semantics of a programming language, the functionality of a software development environment and basic object-oriented concepts. Although many professionals in education believe in the ``object first'' approach as the best method of introducing object-oriented concepts, there is no common agreement on how to start such courses. Current study programs often begin by teaching a programming language, instead of focusing on the basics of object-oriented concepts. In the last years a learning environment was developed based on a visual programming language to abstract away from details. It assists teaching step-by-step object-oriented concepts and the syntax and semantics of a programming language in secondary schools and first year university courses. Our goal is to port this learning environment to the widely used IDE Eclipse.

Selective Tracing of Java Programs - Wendehals, Lothar; Meyer, Matthias; Elsner, Andreas (Proc. of the 2nd International Fujaba Days 2004, Darmstadt, Germany)
Design recovery, which means extracting design documents from source code, is usually done by static analysis techniques. Analysing behaviour by static analysis is very imprecise. We combine static and dynamic analysis to increase the preciseness of our design recovery process. In this paper we present an approach to collect data for the dynamic analysis by recording method calls during a program's execution. To reduce the amount of information we monitor only relevant classes and methods identified by static analysis.