I just found this paper with a very promising and inspiring title:
K. Jeffery, C. Meghini, C. Concordia, T. Patkos, V. Brasse, J. van Ossenbruck, Y. Marketakis, N. Minadakis & E. Marchetti, "A Reference Architecture for Virtual Research Environments", 15th International Symposium of Information Science, 13-15 March 2017, Humboldt-Universität zu Berlin
You can read it by the online version of the proceedings http://isi2017.ib.hu-berlin.de/proceedings.html
The paper results from the VRE4EIC project and I think it is of interest for this group.
I'm a member of the BlueBRIDGE project and I'm involved in VRE development since years. I would like to complement a bit the content of the paper by bringing in our experiences and stimulate a fruitful discussion. I focus on two points: (i) what is the approach actually exploited by BlueBRIDGE, and (ii) whether a single Reference Architecture for VREs is suitable or not.
The paper indicates that the BlueBRIDGE approach is the following "BlueBridge produces a VRE that is tightly coupled to the underlying e-RIs;". I would say that this is not correct for several reasons:
- BlueBRIDGE is developing and operating a series of Virtual Research Environment each tailored to serve the needs of dedicated comunities. VREs are dynamically created. The currently deployed ones are available at https://bluebridge.d4science.org/explore (some of them are freely available);
- Although BlueBRIDGE is oriented to serve the "marine" domain its underlying "primary" infrastructure (D4Science.org) and enabling technology (gCube) are generic. In fact, they have been and will be exploited to serve the needs of diverse communities and application contexts including social mining scientists, environmental scientists, agriculture scientists, cultural heritage practitioners, geothermal scientists, multidisciplinary community dealing with scholarly communication and open science, data science educators.
- D4Science is an infrastructure built with the "system of systems" approach; In the reality it is an ecosystem of ICT infrastructures. Each VRE built by relying on D4Science facilities is actually relying on services coming from many infrastructures and providers;
- An overview of the enablign technology is included in the following paper Assante M, Candela L, Castelli D, Coro G, Lelii L, Pagano P. (2016) Virtual research environments as-a-service by gCube. PeerJ Preprints 4:e2511v1 https://doi.org/10.7287/peerj.preprints.2511v1
On Reference Architectures (RA) for VREs. According to my knowledge a RA is a software system architecture expected to be a sort of template for software systems of a particular domain. The paper proposes one consisting of three-tiers (Application, Interoperability, Resource Access) and six conceptual components (System Manager, Workflow Manager, Linked Data Manager, Metadata Manager, Interoperability Manager, AAAI). The lack of a real definition of what a VRE is or is expected to be as well as the level-of-details makes really challenging to comment this proposal, e.g.
- What is VRE-specific in this set of components? What is making them a must-have to be named VRE? It seems to me the same set of component can be thought for any system willing to integrate resources from existing systems;
- Is a VRE expected to support collaboration and cooperation among the members of its designated community? If yes, what are the envisaged components?
- What is the development and deployment model suggested by this reference architecture? Is it expected that each community willing to build its own VRE has to take care of implementing what is needed (by relying on existing services)? Gluing the "components" together might be time consuming. Is this something to be done per VRE?
- Is workflow-driven approach the "one-size-fit-all" solution for VRE members willing to define and execute their processing tasks. Do exist WFMS suitable for any need? Is there no need to explicitly develop a code or a script for part of a processing task?
These are some of the questions coming to my mind. There might be a gap to fill between "VRE users' expectation" and "VRE promises", a Reference Architecture should carefully describe the promises. Is it actually possible to define "the" reference architecture for VREs? Shall we look at defining a servies of Reference Architectures each taylored to serve a specific domain or to devise a specific class of VRE?