The EOSC-hub project has ended. This space is READ ONLY

Short descriptionVESPA (Virtual European Solar and Planetary Access) is a mature project, with 50 VESPA providers distributing open access datasets throughout the world (EU, Japan, USA).
Type of community

Thematic Services / Competence Centers / Business Cases /Others

Community contactBaptiste Cecconi
baptiste.cecconi@obspm.fr
Observatoire de Paris
InterviewerBaptiste Grenier
baptiste.grenier@egi.eu
EGI Foundation
Date of interview
Meetings
SupportersSee VESPA-Cloud

User stories

Instruction

Requirements are based on a user story, which is  is an informal, natural language description of one or more features of a software system. User stories are often written from the perspective of an end user or user of a system. Depending on the community, user stories may be written by various stakeholders including clients, users, managers or development team members. They facilitate sensemaking and communication, that is, they help software teams organize their understanding of the system and its context. Please do not confuse user story with system requirements. A user story is an informal description of a feature; a requirement is a formal description of need (See section later).

User stories may follow one of several formats or templates. The most common would be:

"As a <role>, I want <capability> so that <receive benefit>"

"In order to <receive benefit> as a <role>, I want <goal/desire>"

"As <persona>, I want <what?> so that <why?>" where a persona is a fictional stakeholder (e.g. user). A persona may include a name, picture; characteristics, behaviours, attitudes, and a goal which the product should help them achieve.

Example:

“As provider of the Climate gateway I want to empower researchers from academia to interact with datasets stored in the Climate Catalogue, and bring their own applications to analyse this data on remote cloud servers offered via EGI.”


No.

User stories

US0

I am a small data provider willing to join VESPA, but I don't have any IT support team to implement and maintain a VESPA server. I want to share my data products so that the community can find and use my datasets. Thanks to VESPA-Cloud, I can set up a VESPA data service, focussing on the science interface, and let the VESPA team manage the server.

US1 

As a VESPA-Cloud admin I want to create a pre-configured science-enabled VM to be instantiated on demand for VESPA providers and dynamically configured for them.

US2

As a VESPA-Cloud admin I want to manage authentication and authorisation to e-infrastructures (EGI and EUDAT) resources using eduTEAMS as my community AAI.

US3

As a VESPA-Cloud admin I want to manage authentication and authorisation to the VESPA-Cloud server instance via SSH or HTTPS using eduTEAMS as my community AAI.

US4

As a VESPA-Cloud admin I want to monitor the status of my deployments and be warned in case of problems.

US5

As a VESPA-Cloud admin I want to collect accounting information about access to the scientific data.

US6

As a VESPA provider I can configure my VESPA metadata ingestion scripts on the VESPA gitlab server and push it to my VESPA-cloud instance.

US7

As a VESPA provider, I can upload my data via EUDAT/B2SAFE (iRODS) or object storage.

US8

As a VESPA provider I want to access a pre-configured Virtual Machine and access it over SSH to process my data accessed via EUDAT/B2SAFE (iRODS) or object storage.

US9

As a VESPA provider I can order a VESPA-Cloud service through the EOSC Marketplace.

US10

As a VESPA provider I want to have my service registered and harvested by B2FIND and IVOA registry to make it discoverable.

US11

As a VESPA end user I want to discover VESPA-Cloud data products through VESPA client and include them in my astronomy pipeline.

Use cases

Instruction

Technical plan: https://docs.google.com/document/d/1nc4aUrO8y39lt_wlvePI8GHxvRdGaIlC

A use case is a list of actions or event steps typically defining the interactions between a role (known in the Unified Modeling Language as an actor) and a system to achieve a goal.

Include in this section any diagrams that could facilitate the understanding of the use cases and their relationships.


Step

Description of action

Dependency on 3rd party services (EOSC-hub or other)

UC1VESPA-Cloud administrators pre-configure a VM image with the VO framework.CloudCompute, Check-in, eduTEAMS
UC2VESPA-Cloud administrators setup auto-configuration of VM on deploy for a specific VESPA provider.CloudCompute, Check-in, eduTEAMS
UC3VESPA-Cloud administrators manage access to the VM instance via SSH or HTTPS using eduTEAMSCloudCompute, Check-in, eduTEAMS
UC4VESPA-Cloud administrators access and receive monitoring notifications for the VESPA-Cloud applications and VM instances.CloudCompute, Check-in, eduTEAMS, ARGO
UC5VESPA-Cloud administrators access accounting information about the scientific data in the VESPACloud VMs.CloudCompute, Check-in, eduTEAMS
UC6VESPA providers order VESPA-Cloud service through the EOSC Marketplace.CloudCompute, Check-in, eduTEAMS, EOSC Marketplace, SOMBO

UC7

VESPA Providers access a VM via SSH with the VO framework installed

CloudCompute, Check-in, eduTEAMS

UC8 

VESPA Providers access their data in the VM via VESPA Gitlab, B2SAFE or object storage.

CloudCompute, Check-in, eduTEAMS, B2ACCESS, B2SAFE
UC9VESPA end-users discover VESPA-Cloud data products through VESPA client.B2FIND, IVOA

Requirements

Technical Requirements

Instruction

- Requirement number: Use numbers RQ1, RQ2, RQ3, ...
- Requirement title: Use a short but descriptive title. Use the same title in the Jira ticket 'Summary' field
- Link to requirement JIRA ticket: Open a ticket in <this JIRA queue  https://jira.eosc-hub.eu/projects/EOSCWP10/issues/EOSCWP10-4?filter=allopenissues> (click on 'CREATE' button in the middle-top of JIRA)
- Source use case: Refer back to the use cases above (UC1, 2, ...)


Requirement number

Requirement title

Link to Requirement JIRA ticket

Source Use Case

RQ1

Integrate eduTEAMS as community AAI and EGI Check-in as e-infrastructure AAI

EOSCWP10-118 - Getting issue details... STATUS

UC1, UC2, UC3

RQ2

Integrate eduTEAMS as community AAI and EUDAT B2ACCESS as e-infrastructure AAI

EOSCWP10-119 - Getting issue details... STATUS

UC8
RQ3Interact with EGI ComputeCloud resources via authorisation managed in eduTEAMS.Made possible by RQ1 implementation.UC1, UC2, UC3
RQ4Use eduTEAMS to manage access to SSH on EGI ComputeCloud VM using SSH keys. To be discussed with eduTEAMSUC1, UC2, UC3, UC7
RQ5Monitor the VESPA Cloud applications using ARGO.

EOSCWP10-120 - Getting issue details... STATUS

UC4
RQ6Collect accounting information about the scientific data in the VESPACloud VMs.To be included in the VESPA-Cloud VM application and VMs.UC5
RQ7Allow to order VESPA-Cloud instances via the EOSC Marketplace

EOSCWP10-121 - Getting issue details... STATUS

UC6
RQ8Access user data from the VM via VESPA gitlabTo be done internally at Observatoire de ParisUC8
RQ9Access user data from the VM via B2SAFE

EOSCWP10-122 - Getting issue details... STATUS

UC8
RQ10Access user data from the VM via object storage

EOSCWP10-123 - Getting issue details... STATUS

UC8
RQ11Make VESPA-Cloud produced data discoverable via B2FIND and IVOA.

EOSCWP10-124 - Getting issue details... STATUS

UC9

Capacity Requirements


EOSC-hub services

Amount of requested resources

Time period

EGI Cloud Compute20 VM instances linux based (split evenly across 2 sites):
2 CPU per VM,
4GB RAM per VM,
20 GB disk per VM,
1 fixed DNS name per VM
Ports open: 22, 80, 8080
5 remote ssh-key access per VM
Until end of EAP (end of 2020 as of now)
EGI Object Storage2 x 2TBUntil end of EAP (end of 2020 as of now)
EUDAT B2SAFE2TB accessible via iRODSUntil end of EAP (end of 2020 as of now)
GEANT eduTEAMSCommunity AAIUntil end of EAP (end of 2020 as of now)
EGI Check-in

Gateway to EGI resources

Until end of EAP (end of 2020 as of now)
EUDAT B2ACCESSGateway to EUDAT resourcesUntil end of EAP (end of 2020 as of now)
EUDAT B2FINDHarvesting of VESPA dataUntil end of EAP (end of 2020 as of now)