Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Comment: transferred data from design principles

...

Use the provisioner to create tenants and assign services to those tenants.  The provisioner is responsible for allocating databases, tracking which tenant has access to which applications, and taking care of the "magic" which allows applications to provision their own resources and declare which permissions are available for the application.

identity

Code name: isis

Domain: users, permissions, roles

Identity Identity keeps track of the permissions available for the applications, allows administrative users to compose those permissions into roles, create users, and assign roles to users.  Identity authenticates users with passwords, and provides bearer JWT tokens via which other services can check a request's authentication and authorization. Identity can also authentication authenticate services and check if a service has the "right" to act in a user's name.

rhythm

Code name: khepri

Domain: timing of tasks

Provides services with the ability to request notification at a certain time.  Useful for daily interest calculation and other offline jobs that should be done once and only once.

accounting

Code name: thoth

Domain: general ledger, journal entries, trial balance, bank reconciliation

Keeps track of accounts, ledgers, and journal entries.

office

Code name: horus

Saves branchesDomain: offices, employees

Employees and employees and their relationship to each other.  Employees should have a 1:1 relationship with users in the identity service.

customer

Code name: maat

Tracks customers, including their contact details and identification data.Domain: customers, identities, user defined fields

group

Code name: ptah

Domain: groups, meetings

Intended Tracks groups of customers.  Intended for use in group loans, but has not yet been used from any other service or from the UI.  Incomplete.

deposit-account-management

Code name: shed

Domain: deposit accounts, fees, interest calculations, line of credit, payment strategies

Tracks deposit products and deposit accounts for customers.

portfolio

Code name: bastetTracks loan products and loan accounts (aka cases) for customers.

Domain: loans, fees, interest calculations, repayment strategies

teller

Code name: tajet

Provides management of teller cash.  Supports a customer-service-centric view of payment and repayment for deposit, and portfolio.

...