MA License file automation process

Project Status

In progress

Document Owner

@Robert Adach

Business POC

@Dave Ryczko

Related Document Links

 

Azure Dev Ops Work Item #

EPIC: https://aswb.visualstudio.com/DevOpsToolbox/_workitems/edit/1850/

Description

Under Article 87, the Massachusetts Social Work Board, along with other professions are being reorganized under the Professional Health Services group. As part of this reorganization, the MA board will be utilizing a new system for processing and storing licensing information. This project aims to alter the format and means of delivering the MA Data File containing all issued licenses to the MA Board. Due to timelines, the MA Board is asking that these changes be implemented within 2-3 weeks as there is an internal deadline to have the system in production by January 9th.

The DPH has approved the removal of the need to send paper files to the board for all licensed applicants. This will now allow for the automation of several tasks which were triggered by the generation of the paper file documents.

Timelines

Milestone

Target Date

Actual Date

Notes

Milestone

Target Date

Actual Date

Notes

Requirements completed (Phase 1)

12/7/2022

12/7/2022

 

Requirements approved (Phase 1 & 2)

12/9/2022

12/8/2022

 

Sample file sent to eLX team for review (Phase 1)

12/9/2022

12/9/2022

 

Test cases created (Phase 1)

12/16/2022

12/15/2022

 

Development of solution completed (Phase 1)

12/23/2022

 

 

Testing of solution completed (Phase 1)

1/4/2023

 

 

Solution activated in production (Phase 1)

1/9/2023

 

 

Development of Phase 2 solution starts (Phase 2)

1/11/2023

 

 

Development of phase 2 completed

1/25/2023

 

dependent on eLX team

Testing of solution completed (Phase 2)

1/28/2023

 

dependent on eLX team

Solution activated in production (Phase 1)

2/1/2023

 

dependent on eLX team

Assumptions

  • Project timeline adherence is possible if MA Project staff is responsive to questions, and review of sample data

  • The mapping of items to common index values does not change

  • The JSON does not require schema elements not included in the array of objects (records)

Requirements (Phase 1)

  1. As a system, LAPMgr will no longer complete the following tasks associated with the “Send MA Data File” button

    1. create and distribute a license file

    2. change the status of the applications located on the license file created by the new system

    3. insert tracking notes

    4. update date fields associated with the processing of the license file, the completion of the application

  2. As a system, PreApp will no longer complete the following tasks associated with the “Send MA Data File” button:

    1. create and distribute a license file

    2. change the status of the applications located on the license file created by the new system

    3. insert tracking notes

    4. update date fields associated with the processing of the license file, the completion of the application

  3. As a system, the new service must query all relevant data from LAPMgr to create the license file

  4. As a system, the new service must query all relevant data from PreApp to create the license file

  5. As a system, the new service must render the MA license file as a JSON formatted file with the following characteristics

    1. The file is to contain an array of records

    2. The file does not need to contain any supplemental nodes (file creation date, number of array records, etc.)

    3. The filename must include a timestamp for uniqueness.

      1. To account for the possibility of multiple files being placed in a day, or possible delays in MA processing the previously pushed files we will use the current date and time in EPOCH format

  6. As a system, the new service must distribute the MA License file

    1. The process will now PUSH the file to the MA board SFTP server, rather than the existing process of MA PULLING the file from the ASWB SFTP server

    2. The SFTP servers for production and test will now be housed on ASWBData and ASWBDevData to further accelerate the retirement of the Datapath server.

    3. The distribution of the file will be handled via a scheduled task which will occur at 1900 ET.

  7. The new service must generate an file containing a single empty node if there have been no licenses generated since the last running of the new service

  8. The new service must save a copy of the JSON files to a archive directory within ASWB for reference.

  9. The new service will send failure alert to IT staff. These alerts will include technical information to assist in the troubleshooting of the issue.

  10. The new service will update each application included in the license file by:

    1. setting the status of the applications included in the license file to “Closed-Issued”

    2. inserting a tracking note using the “Elect file sent” event

    3. setting the “Processing Complete” date field to the current date & time

  11. As a system, LAPMgr will no longer complete the following tasks associated with the “Send Paper Files” button

    1. insert tracking notes with the “Paper Files Issued” event

    2. change the status of the applications located on the license file to “Closed-Issued”

    3. Update the “Processing Completed” date field

    4. update date fields associated with the processing of the license file, the completion of the application

    5. Update applications to “abandoned” or “expired” status.

  12. As a system, PreApp will no longer complete the following tasks associated with the “Send paper Files” button:

    1. insert tracking notes with the “Paper Files Issued” event

    2. change the status of the applications located on the license file to “Closed-Issued”

    3. Update the “Processing Completed” date field

  13. The new service will undertake the following after successfully completing the generation and distribution of the license file:

    1. Update all applications which should be Expired according to the existing “Abandon - Expiring” view logic in LapMgr

    2. Update all applications which should be Abandoned according to the existing “Abandon - Expiring” view logic in LapMgr

    3. Update all applications which should be Expired according to the existing “Abandon - Expiring” view logic in PreApp

    4. Update all applications which should be Abandoned according to the existing “Abandon - Expiring” view logic in PreApp

Requirements (Phase 2)

  1. The system must send alerts to appropriate ASWB contacts when any part of the process fails. These alerts must contain but “end user” readable information on the error that occurred, as well as any technical information available regarding the issue to assist the IT team in troubleshooting the issue.

  2. The system will create copies of all scanned documents for the PreApp license applications which have had licenses issued included in the created file

    1. The filenames will have a standard naming convention which will be in the pattern TBD

    2. The files will be placed onto the MA SFTP server in a defined location (TBD)

  3. The system will continue to create the documents related to the mailing of the abandoned/expired documents which will continue to have hard copies mailed to them.

Design Considerations

  1. LAPMgr “Send MA Data File” will need to be removed

  2. LAPMgr “Send Data File” will need to be removed

Test Cases

Link to test case documentation

Result

Link to test case documentation

Result

1

Successfully complete process with applications from LapMgr and PreApp

 

2

Successfully complete process with applications from LapMgr and none from PreApp

 

3

Successfully complete process with applications from PreApp and none from LapMgr

 

4

Successfully complete process with no applications from either system

 

5

Successfully handle failure to connect to database

 

6

Successfully handle failure to connect to archive directory

 

7

Successfully handle failure to connect to SFTP server

 

8

Successfully handle failure to save file to SFTP server

 

9

Successfully update status of application to Expire and Abandon

 

10

Successfully handle failure to update status of applications to expire and abandon

 

Questions

Question

Owner

Notes

Question

Owner

Notes

When is the best time to generate the file? In the evening or early morning?

MERS team

ANSWER: The time of 1900 ET was proposed by IT and there were no objections. This can always be changed depending on the processing procedures of the team (with 1 business day notice)

Who (and how) should ASWB contact when there are verifiable issues with the SFTP server

IT / eLX team

 

if the process of sending files is delayed due to issues with the SFTP server, do we need to send the file through alternate means?

IT / eLX team

 

How do we handle “oopsie” issuance of licenses (Stop licenses from being issued if CORI has not been returned.

IT / MERS team

UPDATES:

  1. IT is investigating the level of effort to add a CORI check to the process which will prevent the issuing of licenses.

Can we prevent the issue of “A license has already been issued” error messages

IT

ANSWERS: This is a design flaw in the system and can not be easily addressed.

How do we handle the paper applications that have moved to expired / abandoned status? These are not scanned and saved

IT / eLX team / MERS

ANSWERS: eLX has stated these files are still needed. Solution proposed by MERS is that the “Send paper file” button in PreApp should continue to create the list of expired files which they will manually send. We may revisit this when we get closer to phase 2 launch.

Is the JSON file field specifications and layout acceptable

IT / eLX team / MERS

UPDATES:

  1. request was sent to Dave & Keeley to review and approve the file on 12/8/2022. (Approved 12/8/2022)

  2. request was sent to the eLX team to review and approve the file on 12/9/2022.

  3. eLX has reviewed and provided minor formatting requests which are acceptable by ASWB - 12/14/2022. JSON file definitions.xlsx and sample output have been updated

Escalation Matrix

ASWB MA Automation Escalation Matrix.docx

Supporting Documentation