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

Short descriptionThe AiiDAlab brings the AiiDA workflow manager for computational science (www.aiida.net) to the cloud. The AiiDAlab web platform gives novice users access to their personal pre-configured AiiDA environment in the cloud. The AiiDAlab uses docker for user containers, and kubernetes for orchestration. Users get persistent home volumes for active use (no long-term storage component). 
Type of community

Others (EAP)

Community contactLeopold Talirz <leopold.talirz@epfl.ch>
Interviewer
Date of interview

 

Meetings
Supporters

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

US1

As a computational scientist I want to login into the AiiDAlab using my institutional credentials. 

US2

As a computational scientist, I need to have a personal space to store data that persist between logins.

US3

As a materials scientist I would like to use the AiiDAlab to run and manage materials science workflows on remote compute resources. 

US4As a computational scientist I would like to use the AiiDAlab to participate in AiiDA tutorials so that I do not need to set up the software on my local machine.

Use cases

Instruction

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

Access via institutional credentials to the service

EOSC-hub AAI

UC2Provide an online version of AiiDAlab completely accessible via browser that does not require installation of software

UC3 

Access to a persistent storage pool for users personal space

EGI Online Storage

UC4

Access to compute resources to run users workloadEGI Cloud Compute
UC5Provide a kubernetes deployment to manage access to compute and storage resources for the applicationEGI Cloud Container Compute
UC6Provide scalable kubernetes setup that can adapt to workload during trainingsEC3





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

Example

EOSC-hub to provide an FTS data transfer service

EOSCWP10-21 - Getting issue details... STATUS

UC1

RQ1

EOSC-hub to provide a kubernetes managed pool of resources to  deploy AiiDAlab


UC5, UC6

RQ2

EOSC-hub to provide a single sign-on services that supports institutional credentials


UC1
RQ3EOSC-hub to provide a scalable kubernetes cluster to accommodate varying load during training events
UC6
RQ4EOSC-hub to provide enough resources to host planned training events
UC2, UC3, UC4


Capacity Requirements


EOSC-hub services

Amount of requested resources

Time period