Learn More
Policy based management in service oriented architecture (SOA) allows organizations to apply rules and regulations on their business processes. Policy has long been employed in the management of traditional distributed systems and many policy frameworks have been proposed. However, SOA differs in several aspects to traditional systems thus there is a unique(More)
Experience has shown us that object-oriented technology alone is not enough to guarantee that systems we develop will be ex-ible and adaptable. Even \well-designed" object-oriented software may be diicult to understand and adapt to new requirements. We propose a conceptual framework that would help yield more exible object-oriented systems by encouraging(More)
The requirement for 24/7 availability of distributed applications complicates their maintenance and evolution as shutting down such applications to perform updates may not be an acceptable solution. Therefore, there is a need to be able to update these applications dynamically, i.e. without shutting them down. Current solutions for building dynamically(More)
Cloud computing delivers computing as a utility to users worldwide. A consequence of this model is that cloud data centres have high deployment and operational costs, as well as significant carbon footprints for the environment. We need to develop Green Cloud Computing (GCC) solutions that reduce these deployment and operational costs and thus save energy(More)
The development of flexible and reusable abstractions for software composition has suffered from the inherent problem that reusability and extensibility are limited due to position-dependent parameters. To tackle this problem, we have defined forms, immutable extensible records, that allow for the specification of compositional abstractions in a(More)
In a competitive market like the App Store, high user perceived quality is paramount, especially due to the public review system offered. These reviews give developers feedback on their own apps, as well as help provide data for competitor analysis. However, given the size of the data set, manual analysis of reviews is unrealistic, especially given the need(More)
Real software systems change and become more complex over time. But which parts change and which parts remain stable? Common wisdom, for example, states that in a well-designed object-oriented system, the more popular a class is, the less likely it is to change from one version to the next, since changes to this class are likely to impact its clients. We(More)
When do we call a software development environment a composition environment? A composition environment must be built of three parts: i) a reusable component library, ii) a component framework determining the software architecture, and iii) an open and exible composition language. Most of the eeort in component technology was spent on the rst two parts. Now(More)
Flexibility is achieved in open systems by adopting software architectures that allow software components to be easily plugged in, adapted and exchanged. But open systems are generally concurrent, distributed and heterogeneous in addition to being adaptable. Ad hoc approaches to specifying component frameworks can lead to unexpected semantic conflicts. We(More)