As a system, I must capture demographic information provided by a candidate

Document Status

final

Document Owner

@Robert Adach

Business POC

@Felicia Dennison

Related Document Links

 

Azure Dev Ops Work Item #

User Story 1451

Last updated on

Aug 20, 2021

Last updated by

@Robert Adach

Description

In order for ASWB to be able to conduct in-depth psychometric analysis on exam usage, Candidates registering for the ASWB examination are required to provide certain demographic information.

Assumptions

  • The registration process is being completed by the Candidate (or someone authorized to act on behalf of the Candidate).

  • All instructional and warning text displayed will be the same as those in the legacy registration process.

  • All field labels displayed will be the same as those in the legacy registration process.

  • All logic determining field visibility will be the same as those in the legacy registration process

  • All logic determining field value validity will be the same as those in the legacy registration process.

Out of scope

  • The current process of “pushing” approvals to the online database for use during the registration process does not include any data from previous registrations regarding the Candidates Associate and PHD degrees. This will not be addressed during the development of this feature.

Requirements

  1. The page is not shown until the successful completion of the actions listed in As a system, I must verify and validate a Candidates eligibility

  2. The page will have a single area where all error messages will be displayed.

  3. The page must show the following information at the top of the screen

    1. Candidate Name

    2. Jurisdiction

    3. Exam Level

  4. The system must retain all information from the matched approval when moving from page to page to eliminate repetitive queries to the database.

  5. The system must use the field definitions listed in the Field Requirements section when displaying, validating and verifying the user input

    1. All validations are to be performed once the “Next” button is pressed.

  6. The Major; Year of Graduation and School code fields for the 4 degree types (Rows 18 - 29 on the Field Requirements table) should be presented in a table format. Refer to the Design Consideration section for the reference to the current design which is to be retained.

  7. All data entered on the previous screens must be retained.

  8. The data entered on the screen does not need to be retained if the Candidate navigates to a previous page AND all data verification/validation on the page have not been successfully.

  9. All string fields must

    1. have all non-standard ASCII characters removed

    2. be trimmed of extra spaces and all non-standard ASCII characters should be removed

Field Requirements

Label Value

Field Name

Data Type

Prepopulated Values

Visible when

Invalid when

Error Message

Note…

Label Value

Field Name

Data Type

Prepopulated Values

Visible when

Invalid when

Error Message

Note…

1

Mailing Address

Address1

String (40)

 

Always

Length is < 5

Address is missing

 

2

(Apt, etc.)

Address2

String (40)

 

Always

 

 

 

3

City

City

String (20)

 

Always

Length is < 2

City is missing

 

4

State/Province

State

Drop Down

Full list of states/provinces

Always

No selection is made

State is missing

 

5

Zip/Postal Code

Zip

String (10)

 

Always

IsValidZipCode fails

Please check the zip/postal code

 

6

Email

EmailAddress

String (100)

 

Always

IsValidEmail fails

Please check your email address

 

7

Confirm email

ConfirmEmailAddress*

 

 

Always

  1. no value entered

  2. does not match Email address

  1. Please confirm your email address

  2. Your email addresses do not match

 

8

Office phone

WorkPhone

String (32)

 

Always

  1. If WorkPhone is empty AND HomePhone is Empty AND CellPhone is Empty

  2. If ProcessPhoneNo length > 32

  1. At least one phone number is required

  2. Display ProcessPhone message

 

9

Home phone

HomePhone

String (32)

 

Always

  1. If ProcessPhoneNo length > 32

  1. Display ProcessPhone message

 

10

Cell phone

CellPhone

String (32)

 

Always

  1. If ProcessPhoneNo length > 32

  2. If ProcessPhoneNo length > 14

 

 

  1. Display ProcessPhone message

  2. Please check your cell phone number. It is too long

 

11

Date of Birth

BirthDate

datetime

From previous screen

Always

  1. no value is entered

  2. if value is more than 90 years ag0

  3. if value is less than 18 years ago

  1. Please enter your date of birth

  2. Please check year of birth

  3. Please check year of birth

 

12

Gender

Gender

Gender LOV (Radio Group)

 

Always

no value selected

TBD

 

13

Custom gender

CustomGender

String (100)

 

Always

Gender value = 3 and (no value is entered OR length of value < 2)

TBD

 

14

Nationality

Nationality

Nationality LOV

From approval record

Always

no value selected

TBD

 

15

Race/Ethnicity

Ethnicity

Ethnicity LOV

 

Always

no value selected

TBD

 

16

What is your first/native language?

PrimaryLanguage

Language LOV

From approval record

Always

  1. no value selected

  2. PrimaryLanguage = 1 and ESL = 2

  1. Please select your first language

  2. You have requested special arrangements for English as a second language on the previous page but have declared English as your primary language on this page. Please correct one or the other.

 

17

Primary Position

PrimaryPosition

Primary Position LOV

From approval record

Always

no value selected

Please select your primary position

 

18

Years in practice since highest social work degree

YearsInPractice

int

From approval record

Always

no value entered OR value < 0 OR value is not a number

Please enter the number of years in practice since receiving your highest social work degree.

 

19

Associate Degree Major

ASDegree

Major LOV (Radio Group)

 

Always

  1. no value is selected

  1. Please select an AS degree. Use 'No Degree' if applicable

 

20

Associate Degree Year of Graduation

ASYear

int

 

Always

  1. if value is entered AND value is not 4 digits in length OR if value is entered AND value not a number

  2. If BirthDate is valid and value entered is more than 1 year in the future

  3. If BirthDate is valid and value entered is less than 16 years from the current year

  1. Please check your AS year of graduation. It must be a 4-digit year such as "2008”.

  2. Please check your AS year of graduation. It should not be more than 1 year in the future.

  3. Please check your AS year of graduation. It shows you were under 16 at the time.

When comparing to Birthdate, or current date or future dates, we are comparing only the YEAR. Example. If today is 7/29/2021, the validation for one year in the future is against 2021.

21

Associate Degree School Code

ASSchool

int

 

Always

Value entered is not on the CSC School list

Invalid school code: <<ASSchool>>. Please choose a school from the list.

 

22

Bachelors Degree Major

BSDegree

Major LOV (Radio Group)

From approval record

Always

  1. no value is selected

  1. Please select an BS degree. Use 'No Degree' if applicable

 

23

Bachelors Degree Year of Graduation

BSYear

int

From approval record

Always

  1. if value is entered AND value is not 4 digits in length OR if value is entered AND value not a number

  2. If BirthDate is valid and value entered is more than 1 year in the future

  3. If BirthDate is valid and value entered is less than 18 years from the current year

  1. Please check your BS year of graduation. It must be a 4-digit year such as "2008”.

  2. Please check your BS year of graduation. It should not be more than 1 year in the future.

  3. Please check your BS year of graduation. It shows you were under 18 at the time.

When comparing to Birthdate, or current date or future dates, we are comparing only the YEAR. Example. If today is 7/29/2021, the validation for one year in the future is against 2021.

24

Bachelors Degree School Code

BSSchool

int

From approval record

Always

Value entered is not on the CSC School list

Invalid school code: <<BSSchool>>. Please choose a school from the list.

 

25

Masters Degree Major

MSDegree

Major LOV (Radio Group)

From approval records

Always

  1. no value is selected

  1. Please select an MS degree. Use 'No Degree' if applicable

 

26

Masters Degree Year of Graduation

MSYear

int

From approval record

Always

  1. if value is entered AND value is not 4 digits in length OR if value is entered AND value not a number

  2. If BirthDate is valid and value entered is more than 1 year in the future

  3. If BirthDate is valid and value entered is less than 18 years from the current year

  1. Please check your MS year of graduation. It must be a 4-digit year such as "2008”.

  2. Please check your MS year of graduation. It should not be more than 1 year in the future.

  3. Please check your MS year of graduation. It shows you were under 18 at the time.

When comparing to Birthdate, or current date or future dates, we are comparing only the YEAR. Example. If today is 7/29/2021, the validation for one year in the future is against 2021.

27

Masters Degree School Code

MSSchool

int

From approval record

Always

Value entered is not on the CSC School list

Invalid school code: <<MSSchool>>. Please choose a school from the list.

 

28

PhD Degree Major

PhdDegree

Major LOV (Radio Group)

 

Always

  1. no value is selected

  1. Please select a PhD degree. Use 'No Degree' if applicable

 

29

PhD Degree Year of Graduation

PhdYear

int

 

Always

  1. if value is entered AND value is not 4 digits in length OR if value is entered AND value not a number

  2. If BirthDate is valid and value entered is more than 1 year in the future

  3. If BirthDate is valid and value entered is less than 20 years from the current year

  1. Please check your PhD year of graduation. It must be a 4-digit year such as "2008”.

  2. Please check your PhD year of graduation. It should not be more than 1 year in the future.

  3. Please check your PhD year of graduation. It shows you were under 20 at the time.

When comparing to Birthdate, or current date or future dates, we are comparing only the YEAR. Example. If today is 7/29/2021, the validation for one year in the future is against 2021.

30

PhD Degree School Code

PhdSchool

int

 

Always

Value entered is not on the CSC School list

Invalid school code: <<PhDSchool>>. Please choose a school from the list.

 

Additional Field verifications

The following are additional verifications which apply to multiple fields or have complex requirements. All items listed must be validated before the Candidate can proceed

Logic

Error Message

Notes

Logic

Error Message

Notes

If the ASDegree value > 0 AND (the ASYear field is empty OR the ASSchool field is empty)

OR

If the ASDegree value = 0 AND (the ASYear field is not empty OR the ASSchool field is not empty)

Must fill out ALL fields for AS degree, or none

  1. If the candidate says they have an AS degree, then the School and Graduation year are populated

  2. If the candidate says they do not have an AS degree, then the School and Graduation year are not populated

If the BSDegree value > 0 AND (the BSYear field is empty OR the BSSchool field is empty)

OR

If the BSDegree value = 0 AND (the BSYear field is not empty OR the BSSchool field is not empty)

Must fill out ALL fields for BS degree, or none

  1. If the candidate says they have an BS degree, then the School and Graduation year are populated

  2. If the candidate says they do not have an BS degree, then the School and Graduation year are not populated

If the MSDegree value > 0 AND (the MSYear field is empty OR the MSSchool field is empty)

OR

If the MSDegree value = 0 AND (the MSYear field is not empty OR the MSSchool field is not empty)

Must fill out ALL fields for MS degree, or none

  1. If the candidate says they have an MS degree, then the School and Graduation year are populated

  2. If the candidate says they do not have an MS degree, then the School and Graduation year are not populated

If the PHDDegree value > 0 AND (the PHDYear field is empty OR the PHDSchool field is empty)

OR

If the PHDDegree value = 0 AND (the PHDYear field is not empty OR the PHDSchool field is not empty)

Must fill out ALL fields for PhD degree, or none

  1. If the candidate says they have an PhD degree, then the School and Graduation year are populated

  2. If the candidate says they do not have an PhD degree, then the School and Graduation year are not populated

If ExamLevelID > 1 AND NOT(BSDegree = 1 OR MSDegree =1 OR PHDDegree = 1)

A degree in social work is generally required. Please check your entries. If there is no degree, please contact ASWB Candidate Services via our Contact Form.

If the candidate is sitting for an exam other than the Associates level exam, they need to have a Social Work degree listed

If ExamLevelID > 2 AND NOT(MSDegree =1 OR PHDDegree = 1)

A MS in social work is generally required for this exam level. Please check your entries. If there is no degree, please contact ASWB Candidate Services via our Contact Form.

If the Candidate is sitting for an exam level above Bachelors, there should be an MS or PhD degree in SW.

List of Values

The following defines the list of values used by this feature.

  • List Name - The name given to a group a values

  • Display - The value to display on the screen

  • Index - The value which should be stored in the database

  • Display order - the order within the list the value should be stored

List Name

Display

Index

Display Order

List Name

Display

Index

Display Order

1

Gender

Male

1

1

2

Gender

Female

2

2

3

Gender

Custom Gender

3

3

4

Gender

Prefer not to disclose

0

4

5

Nationality

US

1

By Index

6

Nationality

Other

2

By Index

7

Ethnicity

African American

3

By Display value

8

Ethnicity

Asian

2

By Display value

9

Ethnicity

Caucasian

5

By Display value

10

Ethnicity

Hispanic/Latino

4

By Display value

11

Ethnicity

MultiRacial

6

By Display value

12

Ethnicity

Native American

1

By Display value

13

Ethnicity

None Declared

0

By Display value

14

Ethnicity

Other

8

By Display value

15

Ethnicity

Puerto Rican

7

By Display value

16

Language

English

1

By Index

17

Language

Other

3

By Index

18

Primary Position

Administrator/Manager

1

By Display value

19

Primary Position

Consultant

6

By Display value

20

Primary Position

Direct Service Provider

7

By Display value

21

Primary Position

Does Not Apply

10

By Display value

22

Primary Position

Educator

8

By Display value

23

Primary Position

Evaluator/Researcher

4

By Display value

24

Primary Position

Other

9

By Display value

25

Primary Position

Policy Analyst/Lobbyist

2

By Display value

26

Primary Position

Program Planner

3

By Display value

27

Primary Position

Supervisor

5

By Display value

28

Major

Social Work

1

1

29

Major

Other

3

2

30

Major

No Degree

0

3

Supporting Functions

The items within this section are functions and queries to be used by the system during the process of validating and verifying a Candidates approval

The variables defined in the SQL queries are as such

  • IDNo - the Deby Encoded IDNo field value

  • Jurisdiction - the 2-character state abbreviation of the jurisdiction selected by the Candidate on the initial Registration Page

  • ExamLevelID - the ID number associated to the exam level selected by the user

  • LastName - the last name provided by the Candidate

  • BirthDate - the complete birthdate entered by the Candidate

ValidZipCode

TBD

ValidEmail

TBD

ProcessPhoneNo

 

public static string ProcessPhoneNo(string PhoneNo) { Regex phoneRegex = new Regex("[^0-9.]"); string i; string result = ""; if (String.IsNullOrEmpty(PhoneNo)) { return result; } // strip all characters except 0-9. // if result is at least 10 digits, // then format as (123) 456-7890 x1234567890123456 (26digits,32char&spaces) // (extension has room for another 10-digit PhoneNo + 6-digit extension) //if blank, don't do anything result = phoneRegex.Replace(PhoneNo, ""); if (String.IsNullOrEmpty(result) || result.Length < 10) { result = "This field should contain a phone number"; return result; } //strip leading 1 - is probably a mistake, as in 1-800- //There no valid area codes starting with 1, and international code is 011. if (result.Substring(0,1) == "1") { result = result.Substring(1, result.Length - 1); if (result.Substring(0,1) == "1") { result = PhoneNo + " Check area code - should not start with 1"; return result; } } // If leading value = 011 then international number if (result.Substring(0,3) == "011") { result = result.Substring(0,3) + "-"+ result.Substring(3,2) + "-" + result.Substring(5, 2) + "-" + result.Substring(7, 4) + "-" + result.Substring(11, 20); if (result.Length > 19) { result = result.Substring(0, 18) + "x" + result.Substring(19); } } else if (result.Length < 10) { return PhoneNo + " Check phone number - is too short"; } else if (result.Length > 9) { result = "(" + result.Substring(0,3) + ") " + result.Substring(3, 3)+ "-" + result.Substring(6, 20); if (result.Length > 13) { result = result.Substring(0, 13) + "x" + result.Substring(14); } } return result; }

VerifySchool

The school code entered by the Candidate must appear on the list returned from this query

 

SELECT n.SchoolID, [School] = s.State + ' ' + n.SchoolName FROM tblRefSchoolName n INNER JOIN tblRefSchool s ON n.SchoolID = s.SchoolID WHERE ((n.SchoolID < 800000) OR (n.SchoolID in (888888, 999999))) AND n.schoolid != 0 AND n.IsCurrent = 2

Design Considerations

Top of Contact Information screen
Bottom of Contact Information screen

Test Cases

Link to test case documentation

Result

Link to test case documentation

Result

1

 

NOT TESTED | FAILED | PASSED

2

 

 

Related Items

 

 


IT Information

  1. The all queries listed on this page should utilize the ASWBOnline Connection String