What you need before you start:

To use the Hub Testing Integration System (HITS), you'll need the following:

You'll also need a basic knowledge of SIF REST:

You need to know how to work with a usecase in HITS and access the HITS API

If you get stuck: drop us a line at info@nsip.edu.au

How to implement third party Daily Attendance Recording

1. What's the business problem?

Allow schools to securely provide SIS information to the Attendance product of their choice, and also to allow school attendance records to be published to a jurisdictional data hub.

More...

2. Use Case Description & Pre-Conditions

A 3rd Party Daily Attendance application connects to HITS as a jurisdiction hub, collecting the relevant information and publishing back attendance records to the centralised system.

Assumptions:

3rd Party Vendor is a current supplier of a Student Attendance product in schools or has knowledge of Student attendance reporting processes in K-12 Schools.

Pre-Conditions:

Here is the XSD schema for SIF 3.4.1, and a detailed description of the Attendance Baseline Profile.)

Usecase workflow summary:

  1. Join

  2. Consume

  3. Process

  4. Provide

  5. Assurance

Assurance:

The SIF/XML data sent by the 3rd Party app to the Jurisdiction Zone for the app must satisfy the following conditions:

Note that in some deployments, only StudentDailyAttendance records, only StudentAttendanceSummary records, or only StudentAttendanceTimeList records may be required.

More...

3. Join required School Zone.

4. Consume Base Data from HITS.

Vendor-facing (pull); HITS represents the Jurisdiction and is the data source for seed information.

Consume:

The following is a list of calls that need to be made to consume the required information:

  1. Get SchoolInfos - http://.../SchoolInfos  (HITS should determine the URLs eg http://hits.nsip.edu.au/SchoolInfos - access this information from your Dashboard.)
  2. Get StudentSchoolEnrollments - http://.../StudentSchoolEnrollments
  3. Get StudentPersonals -  http://.../StudentPersonals (linked to school via StudentSchoolEnrollment; eg: equivalent to  http://.../SchoolInfo/\\{REFID}/StudentSchoolEnrollments/{REFID}/StudentPersonals)
  4. Get CalendarDates - http://.../CalendarDates
  5. Get CalendarSummarys -  http://.../CalendarSummarys

Endpoints may support additional queries for retrieving data - refer to Query-by-example or service paths? for HITS guidance on queries.

5. Process in 3rd Party Application.

3rd Party App uses the consumed data to produce a schedule. The definition and automation of this process is out of scope of HITs.

Steps:

6. Provide Authoritative Data

Prior to providing:  

  Third party expresses return information in SIF/XML:

7. Assurance: Self – Confirmation of Use Case Support

  1. Validate StudentDailyAttendance records
  2. Validate StudentAttendanceSummary records
  3. Validate StudentAttendanceTimeList records

More information...

What business problem does this Use Case address?

In brief:

Schools currently use third-party attendance applications locally to supplement their Student Information System (SIS). The seed information for recording of attendance is held in the School's SIS and usually exported locally with little security.

As jurisdictions centralise systems, 3rd Party Vendors have the opportunity to seed their product/s from a quality assured data hub using automated feeds, rather than manual updates from the school. 3rd  Party Vendors are also expected to provide information directly back to the centralised system through an automated feed, rather than having the information mediated through the school. 

This use case shows how 3rd  party attendance vendors can connect to a centralised data hub to securely access to the required information and publish back the Daily Attendance records to the centralised data hub.

Usecase preconditions for assurance

For the purposes of validation, a new StudentDailyAttendance object is well-formed if:

For the purposes of validation, a new StudentAttendanceSummary object is well-formed if it satisfies the following requirements:

For the purposes of validation, a new StudentAttendanceTimeList object is well-formed if it satisfies the following requirements: