Aller au contenu principal

O07 - Usability Testing

SequenceObjective DetailTest Procedure
O07Test usability of all components in scope, from the perspective of 3 different types of users (issuer, holder, verifier), and covering the main use cases in scope to issue and verify credentials.Test usability of all components in scope, from the perspective of 3 different types of users (issuer, holder, verifier), and covering the main use cases in scope to issue and verify credentials.

Context

The overall concept for Blueprint Issuer may be too abstract, so we will try to implement a testing environment with "closer to reality" examples of claim ensembles, and roles.

Issuer: Municipality of Utopia City - the issuer is a digital credential solution used by the local government of the Utopia City. The issuer is responsible for managing a variety of identification cards, licenses, and other credentials for citizens who work and reside within the jurisdiction of the municipality.

Scenario #1 - Municipal Government Jurisdiction

Credential Types

Credential TypeDescriptionFields
Recreation CardThis card is registered by an individual or family and entitles the holder to sign up for municipality funded programs such as intramural sports, swimming, art programs, dance classes, etc.
Street Parking Permit (test case)Individuals who reside in residences where off street parking is not available may apply for an overnight street parking permit to lawfully park their vehicle near where they live.
Short Term Rental (STR) LicenseIndividuals who wish to offer short term rentals of their property on platforms such as AirBNB and VRBO must apply for a STR license and comply with local laws and regulations as well as remit taxes including HST.

Administrative Roles

  • Program Admin - this user works for the municipality's digital credential program and is responsible for working with specific business units (e.g. Parks and Recreation) to adopt the digital credential program. They will be responsible for managing credential types of behalf of programs, but not the actual credentials themselves.
  • Credential Admin - this user works for a specific business unit within the municipality (e.g. Parking Enforcement) and is responsible for issuing credentials to citizens
  • Credential Verifier - this user works for a specific business unit within the municipality (e.g. Parking Enforcement) and is responsible for scanning and verifying digital credentials

User Roles

  • Citizen of Utopia City - this user is the average citizen of Utopia City who participates in a variety of programs the municipality offers. They may have one or more credentials in the city and are responsible for managing their credentials and presenting them when asked.
  • Business working with Utopia City - this user is an employee or owner of a business that works with the municipality by law. Examples could be:
    • a private recreational program that is subsidized from the city, as long as its registrants can present their recreational card and identificati
    • a private parking enforcement company that is required to validate the existance of a parking permit from the city before allowing their users to park
    • a short term rental program that is required to validate the existance of a STR permit from the city before allowing their users to post a listing

Assumptions & Acceptance Criteria

  • The possible roles of the issuer, holder, and verifier are clearly defined
  • The issuer is able to perform all of their defined tasks utilizing the Admin Frontend product without any issues
  • The holder is able to perform all of their defined tasks utilizing the Wallet product without any issues
  • The verifier is able to perform all of their defined tasks utilizing the Verifier product without any issues

Testing Guidance

Credential Type Creation

As a Program Admin, I want to onboard the Parking Enforcement business unit into the new Digital Credentials program. To do so, I will need to create a new credential type for the Street Parking Permit.

  1. Log into the Issuer Portal at https://city-admin.blueprintissuer.com

    astuce

    Default full access admin credentials are:
    Login: full.admin@example.com
    Password: adminpassword

  2. Navigate to Settings -> Credential Types in the sidebar navigation.

  3. Start creating a new credential type by clicking the (+) call to action, followed by Create a Credential Type

  4. Enter in the required fields

info

Before creating a Credential, we can assume this Program Admin had to gather requirements from other stakeholders. For example, they would have had to engage a stakeholder from the Parking Enforcement business unit to gather the required fields for the Street Parking Permit, and a technical stakeholder from the IT team to determine the appropriate DID type.

Required Payload

name: Street Parking Permit
category: default
fields: License Plate, Parking Zone, No Offstreet Parking Available, Family Name, Given Name
DID provider: web

  1. Click submit

  2. This credential type is now available for credential issuance by other admins, including Credential Admins who have limited permissions and visibility on the platform

Credential Issuance

As a Credential Admin, I want to issue a Street Parking Permit to a citizen who has applied for one.

  1. Log into the Issuer Portal at https://city-admin.blueprintissuer.com
astuce

Default full access admin credentials are:
Login: full.admin@example.com
Password: adminpassword

Credential access only can also be used:
Login: credential.admin@example.com
Password: adminpassword

  1. Navigate to Profiles and select the profile of the citizen who has applied for a Street Parking Permit

  2. Navigate to the Profile Credentials tab of the citizen's profile

  3. Select the Street Parking Permit credential type from the dropdown

  4. Click Issue

  5. Confirm that the credential now appears in the user's profile

Credential Download and Presentation

As a Citizen of Utopia City, I want to download my Street Parking Permit and present it to a parking enforcement officer.

  1. Open the UTOid wallet application on your mobile device

    astuce

    Android build 7 can be downloaded here

  2. Navigate to the Wallet tab

  3. Click the Login button and then Continue on the following prompt

  4. Enter in your OIDC Login credentials

    info

    OIDC credentials would represent an existing account with the municipality, and would be provided to the user ahead of time. For the purposes of this test, the user should use their email and their user id as their password, for example:

    Login: John.Doe@example.com
    Password: ebe059ec-5b1f-4a5b-8d35-b5e4467ab2a1

  5. Upon successful login, your credentials should be automatically added to your wallet.

  6. To present the credential for verification, simply click on the credential in your wallet and show the QR code to the verifier

Edge Case: Manual Credential Download

tbd

Credential Verification

As a Parking Enforcement Officer, I want to verify the Street Parking Permit of a citizen who has parked their car on the street.

  1. Open the UTOid verifier application on your mobile device

    astuce

    Android build 7 can be downloaded here

  2. Navigate to the Verifier tab

  3. If prompted to grant device camera permissions, click Allow

  4. Scan the QR code presented by the citizen

  5. The scanned result should indicate the status of the credential

Additional Considerations