The Sad State of Statuses

Updated about 6 years ago by Motasem Salem

Many of OSRA models need  to keep track of an object's Status. The following is a list of all possible status values for relevant models.

Orphan Model:

The Orphan model will have three different type of statuses:

  • Activity Status. This is editable by the user and can be one of four values:
    1. Active (default)
    2. Inactive
    3. On Hold
    4. Under Revision
  • Sponsorship Status. This is never edited by the user. It is set and changed by the application according to some business rules. It can be one of four values:
    1. Unsponsored (default)
    2. Sponsored
    3. Previously Sponsored
    4. On Hold
  • Priority Status: This is editable by the user and can be one of two values:
  1. Normal (default)
  2. High

Sponsorship Model:

The Sponsorship (Link) model will only have one status:

  • Activity Status. This is never edited by the user. It is initialized by the application to Active when establishing a new sponsorship link and then to Inactive when the link is broken. Only these two values are possible:
    1. Active (default)
    2. Inactive

Sponsor Model:

The Sponsor model will only have one status:

  • Activity StatusThis is editable by the user and can be one of three values:

      1. Active (default)
      2. Inactive
      3. On Hold

    Partner Model:

    The Partner model will also only have one status:

    • Activity Status. This is editable by the user and can be one of three values:

        1. Active (default)
        2. Inactive
        3. On Hold

      Business Rules:

      1. A new Orphan object starts its life with its Orphan Sponsorship Status set to Unsponsored
      2. The application will change Orphan Sponsorship Status to Sponsored as soon as an Active sponsorship link is established for the orphan.
      3. If the active sponsorship link becomes deactivated for an orphan, the application will change their Orphan Sponsorship Status to Previously Sponsored.
      4. If a user changes a partner's Activity Status to Under Revision then the application will change the Orphan Sponsorship Status of all of the orphans that were imported from the partner's orphan lists to On Hold.


      • The above lists only specify what statuses are needed and what values are permitted for each. It is NOT meant to be a list of Status Models that we need to implement.
      • The current ERD and the current schema do NOT adhere to the requirements stated above. This was a cause of confusion in a recent scrum.
      • We need to discuss how to address this requirements. We might have to introduce new status models and / or rename existing ones.


      comments powered by Disqus