A library for systems with two point boundary conditions is implemented on MATLAB for development of a CACSD package for sampled-data systems. It is shown that we can handle various setups of sampled-data systems incl...
详细信息
ISBN:
(纸本)0780383354
A library for systems with two point boundary conditions is implemented on MATLAB for development of a CACSD package for sampled-data systems. It is shown that we can handle various setups of sampled-data systems including multirate control and input/output time-delay in a unified way by using the systems with two point boundary conditions. Based on the developed library with object-oriented programming feature, it is easy to implement analysis and design algorithms of sampled-data systems with high readability.
Knowing where to start reverse engineering a large software system, when no information other than the system's source code itself is available, is a daunting task. Having the history of the code (i.e., the versio...
详细信息
ISBN:
(纸本)0769522130
Knowing where to start reverse engineering a large software system, when no information other than the system's source code itself is available, is a daunting task. Having the history of the code (i.e., the versions) could be of help if this would not imply analyzing a huge amount of data. In this paper we present an approach for identifying candidate classes for reverse engineering and reengineering efforts. Our solution is based on summarizing the changes in the evolution of object-oriented software systems by defining history measurements. Our approach, named Yesterday's Weather, is an analysis based on the retrospective empirical observation that classes which changed the most in the recent past also suffer important changes in the near future. We apply this approach on two case studies and show how we can obtain an overview of the evolution of a system and pinpoint its classes that might change in the next versions.
The Hyperlink Induced Topic Search algorithm, which is a method of link analysis, primarily developed for retrieving information from the Web, is extended in this paper, in order to evaluate one aspect of quality in a...
详细信息
ISBN:
(纸本)0769521630
The Hyperlink Induced Topic Search algorithm, which is a method of link analysis, primarily developed for retrieving information from the Web, is extended in this paper, in order to evaluate one aspect of quality in an object-oriented model. Considering the number of discrete messages exchanged between classes, it is possible to identify "God" classes in the system, elements which imply a poorly designed model. The principal eigenvectors of matrices derived from the adjacency matrix of a modified class diagram, are used to identify and quantify heavily loaded portions of an object-oriented design that deviate from the principle of distributed responsibilities. The non-principal eigenvectors are also employed in order to identify possible reusable components in the system. The methodology can be easily automated as illustrated by a Java program that has been developed for this purpose.
Aspect orientedprogramming (AOP) is a new programming paradigm that enhances current programming methodologies. It introduces higher level of modularity and better handling of software complexity by providing another...
详细信息
ISBN:
(纸本)1932415300
Aspect orientedprogramming (AOP) is a new programming paradigm that enhances current programming methodologies. It introduces higher level of modularity and better handling of software complexity by providing another level of abstraction for Separation of Concerns. Multidimensional Separation of Concerns (MDSOC) is one of the AOP approaches with the strong emphasis on addressing software evolution issues including encapsulation of random and/or even the unanticipated concerns. Visual Basic((R)) is commonly used in various business applications that usually change so fast It should have a good evolution capability. Now, ***(TM) is very powerful and its abstraction capability enables MDSOC implementation on it. Hyper-YB tool is created to demonstrate how the AOP addition to ***(TM) using MDSOC approach enhances software evolution;modularity and reusability. The techniques used are adapted from the ones used by Hyper/J(TM) system (an AOP implementation using MDSOC for Java(TM) developed by IBM(R)) and further improved.
Heterogeneous modelling and design tools allow the design of software systems using several computation models. The designed system is built by assembling components that obey a computation model. The internal behavio...
详细信息
ISBN:
(纸本)0780388194
Heterogeneous modelling and design tools allow the design of software systems using several computation models. The designed system is built by assembling components that obey a computation model. The internal behavior of a component is specified either in some programming language or by assembling sub-components that obey a possibly different computation model. When the same behavior is used in several computation models, it must be implemented in as many components as there are models, or, if the design platform supports it, it may be implemented as a generic component. Model-specific components require the recoding of the same core behavior several times, and generic components may not take model-specific features into account. In this paper, we introduce the notion of domain-polymorph component. Such a component is able to adapt a core behavior to the semantics of several computation models. The core behavior is implemented only once and is automatically adapted to the semantics of different computation models. Domain-polymorph components can be chosen by a system designer and integrated in a computation model: they will benefit from an appropriate execution environment and their semantics will be adapted to the host model. The designer will have the choice for several parameters of the adaptation. Contrary to generic components, such components adapt their behavior to the host model instead of letting the host model interpret their generic behavior. We also present an implementation of the concept of domain-polymorph component in the Ptolemy II framework.
Aspects are behaviours that are tangled and scattered across a system. In requirements documentation, aspects manifest themselves as descriptions of behaviours that are intertwined, and woven throughout. Some aspects ...
详细信息
ISBN:
(纸本)0769521630
Aspects are behaviours that are tangled and scattered across a system. In requirements documentation, aspects manifest themselves as descriptions of behaviours that are intertwined, and woven throughout. Some aspects may be obvious, as specifications of typical crosscutting behaviour Others may be more subtle, making them hard to identify. In either case, it is difficult to analyse requirements to locate all points in the system where aspects should be applied. These issues lead to problems achieving traceability of aspects throughout the development lifecycle. To identify aspects early in the software lifecycle, and establish sufficient traceability, developers need support for aspect identification and analysis in requirements documentation. To address this, we have devised the Theme approach for viewing the relationships between behaviours in a requirements document, identifying and isolating aspects in the requirements, and modelling those aspects using a design language. This paper describes the approach, and illustrates it with a case study and analysis.
The reuse of software components is the key to improving productivity and quality levels in software engineering. However although the technologies for plugging together components have evolved dramatically over the l...
详细信息
ISBN:
(纸本)0780388194
The reuse of software components is the key to improving productivity and quality levels in software engineering. However although the technologies for plugging together components have evolved dramatically over the last few years (e.g. EJB, NET Web Services) the technologies for actually finding them in the first place are still relatively immature. In this paper we present a simple but effective approach for harvesting software components from the Internet. The initial discovery of components is achieved using a standard web search engine such as Google, and the evaluation of "fitness for purpose" is performed by automated testing. Since test-driven evaluation of software is the hallmark of Extreme programming, and the approach naturally complements the extreme approach to software engineering, we refer to it as "Extreme Harvesting". The paper first explains the principles behind Extreme Harvesting and then describes a prototype implementation.
object-oriented programming is a major trend in computer software because it increases flexibility of large-scale software systems. This paper presents an intuitive Windows-based package for the power system analysis....
详细信息
ISBN:
(纸本)0780382714
object-oriented programming is a major trend in computer software because it increases flexibility of large-scale software systems. This paper presents an intuitive Windows-based package for the power system analysis. The advantages of the object-oriented approach are demonstrated with an implementation of the graphical part of the package. To achieve usage flexibility the package is designed to have the following features: A graphical editor to visually edit the power system diagram, results processing and exporting and graphic presentations. The application programs in this package include the power flow calculation, the continuation power flow calculation, the available transfer capability calculation, and sensitivity analysis. This package may be useful for educational and training purposes.
There is no doubt that components make a significant contribution to the solution of software engineering problems. Component-orientedprogramming is changing the way we think about programming in general and programm...
详细信息
ISBN:
(纸本)1932415300
There is no doubt that components make a significant contribution to the solution of software engineering problems. Component-orientedprogramming is changing the way we think about programming in general and programming of distributed systems in particular. Encapsulation is a key software engineering principle that must be guaranteed in component-orientedprogramming. This paper presents an overview of the support that major object-oriented programming languages such as C# and Java offer to accommodate component programming. This paper then proposes a pure component abstraction that will better support the principle of encapsulation and develops requirements for full support of component programming using object-oriented concepts.
Model Driven Architecture (MDA) is recently announced initiative of the object Management Group (OMG). This paper describes an approach of applying the model driven development in the power system. Presented architect...
详细信息
ISBN:
(纸本)0780382714
Model Driven Architecture (MDA) is recently announced initiative of the object Management Group (OMG). This paper describes an approach of applying the model driven development in the power system. Presented architecture gives full flexibility of the automation in source code generation still having reasonably efficient generated source code. Some of the most important insights of what an MDA should have are shown using Unified Modeling Language (UML). Model driven development essentials are also explained. The paper was guided toward fulfilling these essentials. An example design pattern to source code generation for the power system optimization is developed and described.
暂无评论