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.”
Message from the customer:
Hi, I'm looking for a way to store and share the data acquired from Raman spectroscopy measurements, mostly on glasses and thin films. I would also like to have a way of programmatically accessing the data, doing searches based on metadata and performing some analysis on the fly. Could you please advise me on the services available at EOSC/EGI to achieve this goal. Thanks! Best regards, Dejan SKRELIC. CNRS research engineer.
No. | User stories |
---|---|
US1 | The user (admin role) fill a Database/Repository with datafiles (measurements Raman Spectroscopy experiments). The repository allows sharing of data with colleagues and browsing/searching based on metadata. The repository should be manageable by the researcher. The data files in the repository should be processed with a suite of scientific algorithms in Python (Anaconda: scikit-learn,numpy, scipy, matplotlib, Jupyter, ...). |
US2 | |
... |
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 | uploading data in the database/repository | repository (B2SHARE?) |
UC2 | searching/browsing/accessing the repository | (if B2SHARE) a suitable metadata schema for this type of data to be implemented in B2SHARE |
UC3 | managing the data in the repository; * which actions? | depends on the actions |
UC4 | access/transfer data to compute environment | programatical access to B2SHARE; workspace with computing facilities → Jupiter Notebook environment with storage and access to B2SHARE? |
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 | B2SHARE community space and metadata schema for the Raman Spectroscopy community | EOSCWP10-108 | UC1-3 |
RQ2 | JB environment for Raman Spectroscopy community | EOSCWP10-86 | UC4 |
RQ3 | communication between JB and B2SHAREW | ? | UC4 |
Capacity Requirements
EOSC-hub services | Amount of requested resources | Time period |
---|---|---|