UI Mockups

The workflow for instructor training is going to change. In this blog post, I quickly recap what is the current workflow, what AMY lacks to make the workflow smooth, propose the UI of the new AMY functionality and invite you to discussion.

Workflow recap

Let me recap what are the steps of the workflow.

  1. Candidates apply for Instructor Training. This can happen in one of three ways:

    1. An individual person requests a training using this form.

    2. A partner requests a training on behalf of a group many people. (No form yet.)

    3. A non-partner requests a training on behalf of a group of people. (No form yet.)

  2. Creating Event record in AMY database.

  3. Matching applicants to trainings.

  4. Running the training.

  5. Homework.

  6. Discussion Session.

  7. Demo Session.

  8. Giving instructor badge and generating certificates for trainees who fulfilled all four requirements: participated in an Instructor Training, did homework, passed Discussion Session as well as Demo Session.

  9. Closing the training. A trainee fails if they’re still in progress. That is, they have to start the procedure from the beginning and take part in another Instructor Training if they want to become SWC/DC Instructor.

Missing functionality

1. Group application form

Groups apply for an Instructor Training using different form than individuals.

Here is link to the mockup.

One challenge that we need to address is to match applicants to existing Person records in order not to duplicate them. This applies to individual applications too.

2. Applicants list

The queue of all applicants along with info how they got in.

We also want a bulk match people to event functionality. Now it’s implemented using “upload csv”. We also want to put somebody in a queue of “backup” trainees for an event in the case of group applications when there are more applicants than available slots.

Do we want filtering?

This view have a looot of buttons, some of them are probably unnecessary. Which ones?

Here is link to the mockup.

3. Trainees in progress list

List of all trainees who are not certified yet. We want info about their progress – who did what and what is their state (Person.is_active).

This view will be used by Mentors and Examiners when they lead their Discussion and Demo Sessions. Here they can indicate who was present in their sessions and if they passed. They can easily filter out trainees who are participating in their session by sharing with them special link unique to each session.

We also want to be able to award a trainee SWC/DC Instructor Badge and generate certificate for them.

Here is link to the mockup.

It may happen that somebody fails so miserably during Demo Session that we don’t want to give them another chance. In that case, we inactivate their account (the Examiner needs to edit Person record). We save the reason in Person.notes field.

4. Close event

Training needs a deadline. When we close an event, that means that all trainees who are still in progress failed. We also want a possibility to make an exception and mark that a trainee “save” their progress.

This can be done easily. First, we need to add a flag to event indicating if the deadline was passed. This is one additional “Close event” button in detailed Event view.

If we want to support exceptions, we can add a new role “Learner Exception” (I couldn’t think of better name) and add a task with that role.

Let’s discuss!

Feel free to leave comments and questions! If you don’t have any questions, then I have some:

  1. Is there any difference in the way we should handle group applications from a partner and group applications from a bunch of individuals?

  2. Who does enter the homework URL to AMY?

  3. Each Progress record have the following fields: present, passed, trainee, awarded_by, date, requirement, notes. Do we need present flag? It doesn’t make sense in the case of i.e. homework.

About Krzysztof Chris Mędrela

I'm a Python Trainer. I deliver risk-free customized workshops on testing, Python, Django and Data Analysis in Europe.