14829052
A formal framework for design component contracts
Building large software systems out of existing software components can save time and cost. These software components range from architectural and design components in different phases of software development. Component technologies lead to increasing productivity and flexibility. However, it also introduces significant problems in ensuring the integrity and reliability of these composed systems because of their complex software topologies, interactions, and transactions. In this paper, we concentrate on the pattern-based design components and their compositions, which are captured as contracts through a composition theory. More specifically, design component contract is defined based on process calculus and logic programming; the properties that related to the design component contract are captured, and tools are used to automatically verify these properties. This research will enhance the capabilities of formal system modeling and analysis by providing a rigorous basis for high-assurance integration of diverse pattern-based components.
26328924
Model checking the composition of hypermedia design components
Component-based software development aims at building software system by assembling software components to reduce cost, risk and time-to-market. However, conflicts among components constitute a crucial barrier to successful software composition. In this paper, we present an approach to analyze the properties of components and their compositions in order to detect and correct composition errors. We also demonstrate how model checking can be used to verify properties about the composition of design components. Furthermore, using a hypermedia case study, we show how to represent, instantiate, and integrate design components, and how to find composition errors by applying model checking techniques.
26263616
Developing a Formal Design Analysis Framework
9559762
A logical framework for design composition
The design of a large component based software system typically involves the composition of different components. The lack of rigorous reasoning about the correctness of composition is an important barrier towards the promise of "plug and play". The author describes a rigorous logic framework to reason about component compositions. We focus our analysis on design components such as design patterns, which have been used by a large number of applications. We also propose methods to verify structural and behavioral composition correctness.
16769256
A model transformation approach for design pattern evolutions
The evolution of a design pattern typically involves the addition or removal of a group of modeling elements, such as classes, attributes, operations, and relationships. However, the possible evolutions of each design pattern are often not explicitly documented. Missing part of the evolution process may result in inconsistent evolution. In this paper, we define the evolution processes of design patterns in terms of two-level transformations, thus making the possible evolutions of each design pattern explicit. In addition, we automate the evolution processes as XSLT transformations that can transform the UML model of a design pattern application into the evolved UML model of the pattern. Both the original and evolved UML models are represented in the XML metadata interchange (XMI) format to facilitate the transformations. Furthermore, we check the consistency of the evolution results using the Java Theorem Prover
17418612
Visualizing design patterns with a UML profile
In this paper, we present a UML profile which defines new stereotypes, tagged values and constraints for visualizing design patterns in UML diagrams. These new stereotypes and tagged values are attached to a modeling element to explicitly represent the role the modeling element plays in a design pattern so that the user can identify the pattern in a UML diagram.
36530209
Determination of the star valency of a graph
The star valency of a graph G is the minimum, over all star decompositions π, of the maximum number of elements in π incident with a vertex. The maximum average degree of G, denoted by dmax-ave(G), is the maximum average degree of all subgraphs of G. In this paper, we prove that the star valency of G is either ⌈dmax-ave(G)/2⌉ or ⌈dmax-ave(G)/2⌉ + 1, and provide a polynomial time algorithm for determining the star valency of a graph.
38191842
Modeling of End-to-End Transmission of Astronomical Images over Lossy Network
15881034
Network Topology and a Case Study in TCOZ
Object-Z is strong in modeling the data and operations of complex systems. However, it is weak in specifying real-time and concurrent systems. Timed Communicating Object-Z (TCOZ) extends the Object-Z notation with Timed CSP constructs. TCOZ is particularly well suited for specifying complex systems whose components have their own thread of control. This paper demonstrates expressiveness of the TCOZ notation through a case study on specifying a multi-lift system that operates in real-time.
15362726
State, event, time and diagram in system modeling
The design of complex systems requires powerful mechanisms for modeling state, concurrent events, and real-time behavior; as well as for visualising and structuring systems in order to control complexity. Methods integration has become a recent research trend in software specification and design. In the graphical area, many object-oriented methods have merged into one, the Unified Modeling Language (UML) which combines various diagrammatic modeling techniques to model static and dynamic aspects of software systems. Although traditional formal methods have not scale-up well, new integrated formal methods show great promise. This tutorial will present the state of the art in formal modeling techniques (state-based Object-Z and event-based Timed CSP), their integration (TCOZ), and transformation techniques from the integrated formalism to UML diagrams. An XML web environment for projecting integrated formal models to UML diagrams will also be demonstrated.
13839820
Relating /spl pi/-calculus to Object-Z
Software systems have become increasingly distributed, dynamic and mobile. The complex state and dynamic interfaces of software components and their concurrent interactions provide challenging research issues in system specification and design. An effective combination of structured state-based formalism and dynamic action-based calculus may be a good solution for modeling complex distributed mobile systems. In this paper, we investigate the semantic links between Object-Z and /spl pi/ calculus and consequently introduce a powerful specification technique PiOZ that brings the strengths of the two together. The operational semantics of PiOZ integrates state transition semantics of Object-Z and /spl pi/-calculus reduction rules. The typing rules of PiOZ are developed and reasoning of a system property is presented.