- Created by Baptiste Grenier, last modified on 2020 Jul 20
Short description | VESPA (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 contact | Baptiste Cecconi baptiste.cecconi@obspm.fr Observatoire de Paris |
Interviewer | Baptiste Grenier baptiste.grenier@egi.eu EGI Foundation |
Date of interview | |
Meetings | |
Supporters | See 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) |
---|---|---|
UC1 | VESPA-Cloud administrators pre-configure a VM image with the VO framework. | CloudCompute, Check-in, eduTEAMS |
UC2 | VESPA-Cloud administrators setup auto-configuration of VM on deploy for a specific VESPA provider. | CloudCompute, Check-in, eduTEAMS |
UC3 | VESPA-Cloud administrators manage access to the VM instance via SSH or HTTPS using eduTEAMS | CloudCompute, Check-in, eduTEAMS |
UC4 | VESPA-Cloud administrators access and receive monitoring notifications for the VESPA-Cloud applications and VM instances. | CloudCompute, Check-in, eduTEAMS, ARGO |
UC5 | VESPA-Cloud administrators access accounting information about the scientific data in the VESPACloud VMs. | CloudCompute, Check-in, eduTEAMS |
UC6 | VESPA 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 |
UC9 | VESPA 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 |
RQ3 | Interact with EGI ComputeCloud resources via authorisation managed in eduTEAMS. | Made possible by RQ1 implementation. | UC1, UC2, UC3 |
RQ4 | Use eduTEAMS to manage access to SSH on EGI ComputeCloud VM using SSH keys. | To be discussed with eduTEAMS | UC1, UC2, UC3, UC7 |
RQ5 | Monitor the VESPA Cloud applications using ARGO. | EOSCWP10-120 - Getting issue details... STATUS | UC4 |
RQ6 | Collect accounting information about the scientific data in the VESPACloud VMs. | To be included in the VESPA-Cloud VM application and VMs. | UC5 |
RQ7 | Allow to order VESPA-Cloud instances via the EOSC Marketplace | EOSCWP10-121 - Getting issue details... STATUS | UC6 |
RQ8 | Access user data from the VM via VESPA gitlab | To be done internally at Observatoire de Paris | UC8 |
RQ9 | Access user data from the VM via B2SAFE | EOSCWP10-122 - Getting issue details... STATUS | UC8 |
RQ10 | Access user data from the VM via object storage | EOSCWP10-123 - Getting issue details... STATUS | UC8 |
RQ11 | Make 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 Compute | 20 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 Storage | 2 x 2TB | Until end of EAP (end of 2020 as of now) |
EUDAT B2SAFE | 2TB accessible via iRODS | Until end of EAP (end of 2020 as of now) |
GEANT eduTEAMS | Community AAI | Until 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 B2ACCESS | Gateway to EUDAT resources | Until end of EAP (end of 2020 as of now) |
EUDAT B2FIND | Harvesting of VESPA data | Until end of EAP (end of 2020 as of now) |