5,538 research outputs found
Software engineering and middleware: a roadmap (Invited talk)
The construction of a large class of distributed systems can be simplified by leveraging middleware, which is layered between network operating systems and application components. Middleware resolves heterogeneity and facilitates communication and coordination of distributed components. Existing middleware products enable software engineers to build systems that are distributed across a local-area network. State-of-the-art middleware research aims to push this boundary towards Internet-scale distribution, adaptive and reconfigurable middleware and middleware for dependable and wireless systems. The challenge for software engineering research is to devise notations, techniques, methods and tools for distributed system construction that systematically build and exploit the capabilities that middleware deliver
Book review: The philosophical foundations of modernmedicine
Keekok Lee explores the philosophical foundation of modern medicine, a link often ignored if not denied in the literature. Lee argues that this relationship explains why modern medicine possesses the characteristics it does. Nathan Emmerich finds the work to somewhat confused and more of a study of the philosophical foundations of biomedical science
Component technologies: Java Beans, COM, CORBA, RMI, EJB and the CORBA component model
This one-day tutorial is aimed at software engineering practitioners
and researchers, who are familiar with objectoriented
analysis, design and programming and want to
obtain an overview of the technologies that are enabling
component-based development. We introduce the idea of
component-based development by dening the concept and
providing its economic rationale. We describe how objectoriented
programming evolved into local component models,
such as Java Beans and distributed object technologies,
such as the Common Object Request Broker Architecture
(CORBA), Java Remote Method Invocation (RMI)
and the Component Object Model (COM). We then address
how these technologies matured into distributed component
models, in partiuclar Enterprise Java Beans (EJB) and the
CORBA Component Model (CCM). We give an assessment
of the maturity of each of these technologies and sketch how
they are used to build distributed architectures
An urban vs. rural job satisfaction comparison: state-federal based vocational rehabilitation counselors
Includes bibliographical references
Applying ArchOptions to value the payoff of refactoring
ArchOptions is a real-options based model that we have pro-posed to value the flexibility of software architectures in response to future changes in requirements. In this paper, we build on ArchOptions to devise an options-based model, which values the architectural flexibility that results from a refactoring exercise. This value assists in understanding the payoff of investing in refactoring: if the refactored system results in an architecture that is more flexible, such that the expected added value (in the form of options) due to the en-hanced flexibility outweighs the cost of investing in this exer-cise, then refactoring is said to payoff. We apply our model to a refactoring case study from the literature
Evaluating Software Architectures: Development Stability and Evolution
We survey seminal work on software architecture evaluationmethods. We then look at an emerging class of methodsthat explicates evaluating software architectures forstability and evolution. We define architectural stabilityand formulate the problem of evaluating software architecturesfor stability and evolution. We draw the attention onthe use of Architectures Description Languages (ADLs) forsupporting the evaluation of software architectures in generaland for architectural stability in specific
- ā¦