In systems developed without aspect-oriented programming, code implementing a crosscutting concern may be spread over many different parts of a system. Identifying such code automatically could be of great help during...
详细信息
In systems developed without aspect-oriented programming, code implementing a crosscutting concern may be spread over many different parts of a system. Identifying such code automatically could be of great help during maintenance of the system. First of all, it allows a developer to more easily find the places in the code that must be changed when the concern changes and, thus, makes such changes less time consuming and less prone to errors. Second, it allows the code to be refactored to an aspect-oriented solution, thereby improving its modularity. In this paper, we evaluate the suitability of clone detection as a technique for the identification of crosscutting concerns. To that end, we manually identify five specific crosscutting concerns in an industrial C system and analyze to what extent clone detection is capable of finding them. We consider our results as a stepping stone toward an automated "aspect miner" based on clone detection.
This paper presents an approach for the automatic generation of shortest Distinguishing Sequences (DS) with the Uppaal model checker. The presented method is applicable to a large number of extended finite state machi...
详细信息
ISBN:
(纸本)1595931155
This paper presents an approach for the automatic generation of shortest Distinguishing Sequences (DS) with the Uppaal model checker. The presented method is applicable to a large number of extended finite state machines and it will find an optimal result, if a DS sequence exists for the considered automaton. Our approach is situated in an integrated testing environment that is used to generate checking sequences. The generation method is based on a DS model, which is derived from the same test model that is used for generating test cover sets. The problem of generating DS is reduced to the definition of a DS model and for this reason the complexity of our approach depends mainly on the used model checking algorithm. This means, that the presented method is automatically improved, when the model checking algorithm is improved. This includes the generation of optimal DS depending on the ability of the model checker to produce optimal results. Copyright 2005 ACM.
Construction of complex array operations by composition of more basic ones allows for abstract and concise specifications of algorithms. Unfortunately, naïve compilation of such specifications leads to creation o...
详细信息
Summary form only given. software engineering has matured from heuristic practice to an engineering discipline. Over the years, software technology developed into a key qualification for mastering complex technical sy...
详细信息
Summary form only given. software engineering has matured from heuristic practice to an engineering discipline. Over the years, software technology developed into a key qualification for mastering complex technical systems. Nowadays, software engineers can benefit from a solid stock of basic research addressing the specification, modelling, design and implementation of sequential, concurrent, distributed and real time systems. This paper surveys the scientific foundations of modern software technology concentrating on components, interfaces and behaviours. We present a unifying approach relating different system views manifesting themselves as data model, communication model, state transition model, and process model.
We present a framework for the unifying high-level synthesis of tree-structured and iterative combinational networks. Based on the theory of list homomorphisms, we develop a standard implementation for tree-structured...
详细信息
We present a framework for the unifying high-level synthesis of tree-structured and iterative combinational networks. Based on the theory of list homomorphisms, we develop a standard implementation for tree-structured modules processing the input digits in parallel. The design is systematically specialized to iterative networks processing the input sequentially from the least resp. from the highest significant positions. Throughout the paper, we explicate functional methods for the transformational design of combinational circuits. We illustrate the approach with a parity generator module, a comparator module, and a priority resolution module.
A combination of algebraic and object-oriented specification techniques may take advantage of both approaches for system development. This paper presents a formal method how to transform the signature of an algebraic ...
详细信息
A combination of algebraic and object-oriented specification techniques may take advantage of both approaches for system development. This paper presents a formal method how to transform the signature of an algebraic specification into a collection of object-oriented class signatures in a systematic way. We explore the possible design decisions and manifest them in design functions. The transformation of the signature forms the syntactic basis for relating algebraic specifications with object-oriented modeling in a profound way. The approach bridges the gap between functional specification concepts and object-oriented modeling techniques. An important area of application comprises the top-down development of information storing components. All transformation procedures including the mechanization of the design choices have been implemented in a transformation tool.
In object-oriented software engineering roles are considered both classifications and instances. To reduce the gap between the conceptual modelling of roles and a corresponding implementation, we propose a new role mo...
详细信息
The paper studies the top-down design of a basic interaction pattern for asynchronously communicating components. The interaction pattern describes a high level protocol where an active sender component transmits mess...
详细信息
The paper studies the top-down design of a basic interaction pattern for asynchronously communicating components. The interaction pattern describes a high level protocol where an active sender component transmits messages to a passive receiver component controlled by the receiver's acknowledgements. The formal design refines the components' input/output behaviour into a state-based implementation based on three transformation steps. An architectural refinement decomposes the protocol function into a sender component and into a receiver component introducing a feedback channel. The differentiation localizes the effect of single inputs wrt, a previous input history. The history abstraction extracts the components' control state and data state from the input history.
Several agile (i.e., lightweight) development methodologies, especially extreme programming (XP), have been argued to be a solution to many of the problems that continue to plague software development projects. The au...
详细信息
Several agile (i.e., lightweight) development methodologies, especially extreme programming (XP), have been argued to be a solution to many of the problems that continue to plague software development projects. The authors provide a useful evaluation of such approaches, including a discussion of the values that underlie the XP methodology.
This paper introduces the concept of location-based publish/subscribe (LPS), which allows mobile ad hoc applications to anonymously communicate with each other, depending on their locations. With this concept, publish...
详细信息
This paper introduces the concept of location-based publish/subscribe (LPS), which allows mobile ad hoc applications to anonymously communicate with each other, depending on their locations. With this concept, publish/subscribe topics are typically expressed in a dynamic manner including proximity criteria, e.g., "I subscribe to all events on topic T published within some range R". We advocate that location-based publish/subscribe is a key programming paradigm for building mobile ad hoc application, and sketch our current implementation, which is based on standard APIs of the Java 2 platform, Micro Edition
暂无评论