Information Technology Reference
In-Depth Information
- Development methods should be applicable to the growing number of safe-
tycritical applications (e.g., in the embedded systems area), which in many
cases require certification.
Future research directions include combining abstract modelling, diversity,
time awareness and machine learning to address problems of future software
systems. It has been established that there are several overlaps and common
interests between the areas of software evolution and adaptation, diversity man-
agement and machine learning which are fruitful for future research. Machine
learning techniques can be employed to improve the diversity and evolution man-
agement of software to handle their configuration, collaboration, and adaptation
issues.
5.3 Cloud Computing and Middleware
Manageability in the cloud environment is a major challenge, where manage-
ability is defined as “the collective processes of deployment, configuration, op-
timization, and administration during the lifecycle of IT systems and services”.
Intrinsic to this are the security issues associated with cloud computing. This
becomes particularly important when some of the main applications enabled
through the cloud; enterprise computing, Web 2.0 and High Performance Com-
puting are considered.
While many observers of cloud computing tend to emphasise the computing
on demand and data storage elements of cloud infrastructure, there is also an
important role for distributed computing in the cloud. While cloud computing
often assumes a certain level of homogeneity in applications and execution envi-
ronments, in reality there can be high levels of heterogeneity in the nature of the
underlying clusters and also in the workloads imposed by the applications. This
places heavy demands on the underlying scheduling algorithms underpinning
cloud computation services. The emergence of technologies such as MapReduce
highlights the key research challenges associated with heterogeneity particularly
for job scheduling. There are also implications of heterogeneity for other cloud
services.
Middleware in this type of massively distributed infrastructure also raises
some new research topics. What are the right abstractions for the development
of future distributed systems given the scale of complexity of the underlying
infrastructure? How can we abstract over this complexity? What do we need
in terms of middleware APIs, programming languages and associated software
engineering methodologies? How do we achieve interoperability and openness in
this new world we find ourselves in, especially given the extreme heterogeneity we
encounter in the distributed systems of today? What principles and approaches
do we need to deal with such extreme heterogeneity? Do existing approaches to
interoperability and openness still work?
Search WWH ::




Custom Search