Results 1 -
2 of
2
Scaling Step-Wise Refinement
- IEEE TRANSACTIONS ON SOFTWARE ENGINEERING
, 2004
"... Step-wise refinement is a powerful paradigm for developing a complex program from a simple program by adding features incrementally. We present the AHEAD (Algebraic Hierarchical Equations for Application Design) model that shows how step-wise refinement scales to synthesize multiple programs and mu ..."
Abstract
-
Cited by 261 (31 self)
- Add to MetaCart
Step-wise refinement is a powerful paradigm for developing a complex program from a simple program by adding features incrementally. We present the AHEAD (Algebraic Hierarchical Equations for Application Design) model that shows how step-wise refinement scales to synthesize multiple programs and multiple noncode representations. AHEAD shows that software can have an elegant, hierarchical mathematical structure that is expressible as nested sets of equations. We review a tool set that supports AHEAD. As a demonstration of its viability, we have bootstrapped AHEAD tools from equational specifications, refining Java and non-Java artifacts automatically; a task that was accomplished only by ad hoc means previously.
GlueQoS: Middleware to Sweeten Quality-of-Service Policy Interactions
, 2004
"... A holy grail of component-based software engineering is “write-once, reuse everywhere”. However, in modern distributed, component-based systems supporting emerging application areas such as service-oriented e-business (where web services are viewed as components) and Peer-to-Peer computing, this is ..."
Abstract
-
Cited by 31 (4 self)
- Add to MetaCart
A holy grail of component-based software engineering is “write-once, reuse everywhere”. However, in modern distributed, component-based systems supporting emerging application areas such as service-oriented e-business (where web services are viewed as components) and Peer-to-Peer computing, this is difficult. Non-functional requirements (related to qualityof-service (QoS) issues such as security, reliability, and performance) vary with deployment context, and sometimes even at run-time, complicating the task of re-using components. In this paper, we present a middleware-based approach to managing dynamically changing QoS requirements of components. Policies are used to advertise non-functional capabilities and vary at run-time with operating conditions. We also provide middleware enhancements to match, interpret, and mediate QoS requirements of clients and servers at deployment time and/or runtime. 1

