Skip to end of metadata
Go to start of metadata


In 2018, we asked Keen Design to take a close look at the collaboration flows we need to support in the SCZ.  After interviewing a number of participants, they designed a number of flows that cover most of the use cases we would like to support in de SCZ.  This design was presented during a meeting on December 18th (meeting notes). The scenarios that were detailed in a design:


Scenario 1 - Login failed
View scenario

Scenario 2 - Request access
View scenario

Scenario 3 - Accept invitation
View scenario

Scenario 7 - Upload SSH key
View scenario

CO Manager

Scenario 4 - Create authorisation
View scenario

Scenario 5 - Granting access
View scenario

Scenario 6 - COU sends invitation
View scenario

Scenario 9 - Accept invitation
View scenario

SCZ Admin

Scenario 8 - Create collaboration
View scenario

(PDF-version in case the online scenario's don't work: scenario1-login.pdf, scenario2-request-access.pdfscenario3-accept-invitation.pdfscenario4-add-autorisations.pdfscenario5-granting-access.pdfscenario6-CO-sends-invitation.pdfscenario7-view-profile.pdfScenario8-Create-Collaboration.pdfscenario9-Accept admin-rights.pdf)

Keen did a presentation on their process and findings on dec 19th 2018 (sheets).

Data model

Based on these flows, the (preliminary) data model is as follows:

Which evolved to the following when we started building SBS ourselves (see below):

After having run pilots with institutions using COmanage as Membership Management System (MMS), we got feedback the institutions found COmanage to complex. So we developed a new interface (GitHub sources). This system is called SBS, an abbreviation for the Dutch words for collaboration management system. We developed user stories to develop SBS. We do plan to keep in touch with the COmanage development team to see whether we can at a later stage again join forces.

Development of new open source Collaboration Management System

SURF Research Access Management (SRAM) is build so creating and managing users for research collaborations takes less time while improving secure access. SRAM contains several modules. The 'Membership Management System' (MMS) is the module that allows creation of a research collaboration team, inviting members, connect research services etc. There are several software packages that offer MMS functionality. SURF developed their own based on feedback from institutions. The software package is called SBS, an abbreviation for the Dutch words for collaboration management system (GitHub sources). It looks like this:

Before you dive in, a quick start to SBS:

  • SBS works wih the following objects:
    • 'organisations'. Most of the time, this means 'institution'. Our institutions want to see what collaborative organisations have been started that are the responsibility of that institution.
    • an organisation can have 1 or more collaborations (CO's, collaborative organisations, research teams, virtual organisations, VO's)
    • a user can join a collaboration via an invitation or by sending a join request via a link they find online posted by the collaboration
    • a collaboration has access to 1 or more research services (like data storage offered by an institution or provider, compute resources, research applications etc)
    • within a CO, groups can be created. Members of a CO can be in 1 or more groups. Group membership is transferred to connected research services and for instance can be used to manage who can do what (like: people in group A are allowed Admin rights)
  • a user has a user profile page where they can manage certain aspects of their profile, like upload a SSH key
  • users can login to SRAM/SBS
    • with their institutional account, if their institition (like the University of Amsterdam) has connected their user store (Identity Provider, IdP) to SRAM
    • in case the above does not work for a user, 'guest identity providers' can be used, like Google, Microsoft, Orcid, UnitedIdP etc 
  • in many places an input-field functions in full text search mode, and often inputting a * will list all possible values

We hope this gets you started. Feel free to check it out. And let us know what you think, or when you have questions etc!

  • No labels