Connecting to PASI

When Integrating with PASI, software solutions will need to consider how their system will behave with and without being able to communicate with PASI.

Services

Connecting to PASI uses the following services:

Architectural Considerations

The following questions should be considered when a system wants to Connect to PASI.

How will the solution determine if communication with PASI has been lost?

PASI recommends that an integrated solution, tracks whether or communication with PASI is successful with each call to PASI. If at anytime a request times out and communication is no longer available, an integrated solution should stop submitted requests to PASI until communication has been restore.

PASI recommends that an integrated solution use the light weight Hello World service if the solution does not use the Is Data Available service on a periodic basis to determine when communication with PASI is available. Once communication has been restored, the integrated solution can continue behaving as normal.

PASI recommends that an integrated solution makes the status of the PASI connection available to its users.

What approach is used when the solution cannot communicate with PASI when attempting to retrieve data from PASI?

PASI recommends that an integrated solution synchronizes and keeps a local copy of PASI data if business processes will rely on this information. By doing so, the integrated solution will always have access to the most recent PASI data available prior to any communication loss, and that local copy of the PASI data will be automatically refreshed once communication is re-established.

Any processes / functionality that rely on PASI data that is not synchronized locally will not be available if communication with PASI is unavailable.

What approach is used when the solution cannot communicate with PASI when attempting to submit data updates to PASI?

PASI recommends that the integrated solution allows its users to proceed with their activities even if PASI is not available but provide reminder/notification to its users when action is required to fully complete a transaction when PASI is available.

For example, creation of a new student should still proceed even if PASI cannot be searched to find the student’s ASN or to create a new ASN for the student. The solution is expected to provide a persistent reminder to its users of the incomplete transaction until such time as the transaction has been fully completed. Once PASI is available, users must be able to return to the student in the solution, search PASI to find and record the student’s ASN. Once the ASN has been recorded, the reminder must no longer exist.

PASI recommends integrated solutions have a transaction queue that will hold service requests that cannot be submitted to PASI until such time as connectivity to PASI can be reestablished. Once connection to PASI has been established, queued transactions would be submitted to PASI.

Queued transactions MUST include the reference to the original version number of the entity that the end user was viewing when they created the update transaction. If the entity has a different version number when the transaction is later submitted to PASI, the transaction will be rejected by PASI and the transaction MUST be reviewed by a user to ensure that the update to the entity still makes sense.

For example an update to a student’s address in a SIS should still be completed even if PASI is not available. Once PASI is available, the queued Submit Mailing Address request should be automatically submitted to PASI. Consider this example:

  • A student (at version 100) has a single mailing address (123 Elm St) and enrolls in a new school.
  • On the registration form at the new school the student has indicated a mailing address of 456 Main St.
  • Based on this data, the user submits a transaction to PASI to ADD a new preferred address of 456 Main St and sets the end-date of the existing mailing address of 123 Elm St to the current date.

Now consider the case where PASI is unavailable when these transactions are created and that when the SIS finally submits these transactions to PASI, the student entity is now at version 110 and has had a new address of 456 Main Street added as the student’s new preferred mailing address (by some other user in another school authority).

  • In this case the user must review the updated student entity to ensure that the original transactions still make sense.
  • In this case, the user would likely conclude that no update is required.

Integrated solutions MUST NOT blindly resubmit the original transactions with the student’s new version number.