scientist’s requirements and sometimes also
include outdated hardware. Using virtualization
techniques could skirt this out-of-date issue
because computing power and storage space is
provided by a virtual machine which then is
accessed remotely.
These challenges are addressed by offering
particular services in a Virtual Research
Environment (VRE) as already explained in (Roth et
al., 2011). In that, a service encapsulates each above
mentioned IT resource (virtual machine, network
storage, desktop applications, and web applications)
which should be integrated and utilized within a
VRE. That is why one needs to ensure generic
applicability. Existing VRE solutions do not provide
that because they are restricted to certain research
domains (Carusi and Reimer, 2010).
In (Roth et al., 2011) a high level solution
proposal for a framework to build personal VREs
with generic applicability is given, too. Below, we
go into greater detail by focusing on Resource and
Service layer, and thereby we present how generic
applicability can be achieved. At first, IT resources
are classified according to particular characteristics
and after that we present a short overview of existing
solutions and their unsolved issues. In chapter 5, we
describe our solution in two steps: At first, we
present the similarities of resources and how they
can be classified. Afterwards, we show how
resources can be integrated by using services as
wrappers for them. Finally, we conclude our work
and take a short outlook of our future tasks.
2 RESOURCE CLASSIFICATION
According to the requirements mentioned in the
introduction, the resources have to be classified to
reduce integration effort. Generally, resources can
be categorized into software and hardware. In both
categories the resources can be further subdivided
into two classes according to the feasibility of access
using web technologies. That results in the following
classification. On the one hand, there are software
resources that can be divided into:
• Web applications which directly provide a web
interface that is typically accessible via HTTP,
and
• Desktop applications which do not provide a
direct way to access them via the web. This can
be solved by dint of separate tools that stream
those applications to the user (e.g. ssh -x, remote
desktop protocol). Operating systems are also
assigned to this class because they can be
accessed in the same way.
On the other hand, there are hardware resources
which we again separate into two classes:
• Virtual machines that encapsulate computing
power as well as storage space which both
cannot be used directly. Therefore, an operating
system has to be installed and the applications
have to be streamed as mentioned for desktop
applications. This class of resources gives a
possibility to provide a personal desktop for
visiting scientists on the basis of virtualization
techniques.
• Network storage which, theoretically, is also
viable using a virtual machine. However, this
would be a waste of computing power because it
is not needed at this point. Instead, lightweight
solutions for providing network storage (e.g.
provided by NetApp) are utilized that provide
typical web protocols (NFS, FTP, WebDAV etc.)
to directly offer the network storage to the user.
3 RELATED WORK
As shown in the previous section we discovered four
types of resources that have to be integrated into our
platform. For desktop applications, this can be done
by porting them to web applications using
JavaScript, HTML and other web technologies. This
approach is also followed, for instance, by Google
with Google Docs (Google Inc.) or by Microsoft
with Microsoft Office Web Apps (Microsoft
Corparation, 2010). Both provide office
functionality in the web. But these ports of desktop
applications involve great efforts because the whole
GUI or in the worst case the whole applications
needs to be re-implemented. Thus, it is only
applicable for resources that are utilized by many
users. For highly specialized resources as we often
meet in research environments, this approach is not
sufficient.
Another practice is to use Web Services (W3C)
to access resources in a well-defined way. Thereby,
messages and data are transported over an interface
(Stal, 2002). An example for using Web Services to
define services can be found in (Foster et al., 2002)
where GridServices are specified by a set of
interfaces as WSDL port types. Web Services
provide a way to make resources available via the
internet, but it is not suitable for our requirements
because they do not provide a GUI to access the
service. So, they are just a way to facilitate
IT-AS-A-SERVICEFORBUILDINGVIRTUALRESEARCHENVIRONMENTS
235