Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Microservice nameCodeResponsibleDiscussAPIDescription
Micro service exampleEXAMPLE
Confluence - Development

An example module.

Responsibilities and functionalities:

  • Make the development of a new micro service easier.

      Functionalities:

        • Core registration example
        • Frontend display example
        • Retrieve core data example
    Core backendCOREFlaviuConfluenceAPIResponsible for oAuth login with AP, user management etc
    Should also be able to enable / disable other modules
    Core frontendCOREFlaviuConfluenceResponsible for ALL frontend related stuff (should be tied with CB aka should be rendered by CB for security purposes and easier management). Other modules' frontend will be rendered by this one using templates and cross site requests

    The core module providing the very basics required for all other modules.

    Responsibilities and functionalities:

    • Security between microservices
      • oAuth login (with AP)
    • General frontend
      • Render general frontend
      • Render other modules' frontends
        • Using templates and corss-site requests
    • Module management
      • Enable and disable modules
    • Member management
      • List, add, edit, suspend and group members
      • List, add, edit and delete groups (bodies)
      • Define permission roles
      • Assign roles to members and groups
    EventsEVENTSNico, SergeyConfluenceAPI

    All event-related stuff. Creating, modifying, displaying and deleting events, approving events, managing events' organizers

    Responsibilities and functionalities:

    • Managing events
      • Managing lifecycles and events workflow
      • Managing organizers

      Functionalities:

        • Creating, listing, updating and deleting events
      • Managing lifecycles and events workflow
        • Creating, listing, updating and deleting lifecycles
        • Events lifecycle workflow (assigning a default event status, changing the event status)
      • Managing organizers
        • Adding and removing organizing persons and antennae
    Applications

    JIRA - Issue

    Everything related to the events' applications for the generic events (not statutory and not SU). Applying for the events, managing applications, approving participants.

    Responsibilities and functionalities:

    • Managing the generic application process

        Functionalities:

        Nico
          • Events application process
          • Participation listing
          • Participants selection by the organizers
          • Participants' evaluation for the event
          • Application comments by the organizers
      AlastairFOOD
      Confluence

      Food planning module - A private project from Nico

      Service registryREGISTRYNicoJIRAAPI

      Helps with service discovery based on categories or servicenames and provides an access token registry.

      Responsibilities and functionalities:

      • Provide a JSON interface to the current service setup
        • Get services by name or category
      • Get services by name or category
      • Register auth token for internal communication

          Functionalities:

            • Register and verify auth tokens
        AlastairFOODNicoConfluence

        Food planning module - A private project from Nico

        LDAP support

        JIRA - Issue

        Notifications - pipeN-PIPE
        JIRA - Issue
        Would allow observers to register and push and receive notifications.
        Notifications - emailN-EMAIL


        Emailer: Most likely will not write something ourselves, should use something existing. Flaviu mainly used sendgrid

        Notifications - pushN-PUSH


        Push Notifications

        Cron Module

        JIRA - issue
        Regularily reoccuring tasks
        Statutory microservice



        Application procedure for the statutory events and stuff that happens during statutory events (agorae, epms): Agenda, Proposals and voting on proposals, members, etc. - Not parts of events module
        Voting



        Candidatures, Evaluation (like impact measurement for events), also Recursion (-;
        Antenna Microservice



        Local management tools for antennae like members-list, working groups, local comitees, etc. Might just be another frontend to the core, low priority
        Reporting



        Generate anonymous reports with user and member statistics.
        Finance



        Fee management. Event budgeting. Parts of this are inside the core module at the moment, will be moved out of oms-core for this.
        Storage



        A possibility to backup data to external systems easily.
        Travel



        for example: AEGEE-couchsurfing
        Gamification



        E.g. create badges like "Visited 5 events" or "Attended 3 Agorae in a row"
        Comments



        Make commenting everything possible. Reuse of disqus might be the way to do it.
        SU Webfrontend



        Summer University Website: Will be a little different from the usual events frontend, maintained and developed by SUCT.

        ...