What is an Alexa skill?
Before explaining what an Alexa skill is I would like to define what Voice interface design is. Voice interface design is a product or interface that requires a voice to interact with it. So knowing that, an Alexa skill is like an app but they are voice driven using voice interface design. They allow you to do more with your Alexa. They can even be connected to apps that are on your phone. There are many different skills like trivia, storytelling, scheduling and many more. Anyone can create a skill using blueprints that allow them to customize it to their own contexts and preferences. However, making a successful skill can be challenging based on the skill you want to create.
For this assignment we were in charge of creating our own Alexa skill using blueprints. However, I wanted to try and create a skill that would have the backbones of a blueprint but would not use the main purpose that the blueprint was created for. This way it would force me to think outside the box and get my brain thinking of how I could create the skill I wanted, using the blueprints available.
I chose to create a work schedule helper for high school students with part time jobs. As someone who works with high school students and experienced this myself, the apps that some jobs use for scheduling can be confusing. I wanted to try my hand at creating a skill that would connect to one’s schedule so that they can easily ask questions about their schedule without going into the app itself. This would make knowing information about your schedule quick, easy, and convenient. I ended up calling it work buddy as it would be there to answer any of your work schedule questions.
I started by doing some design research into my target audience. To do so I created a proto persona to help me figure out the goal of my skill. Since I decided that my skill would mostly be geared towards high school students with part time jobs, it is likely that this might be their first job and might need help keeping track of their schedule.
User Research / Competitive Analysis
I started by researching to see if there were any skills already out there available in the skill store with this same concept. I had a difficult time finding anything. One skill that got close that I found was ShedWool but it only really works if your employer uses ShedWool to make their schedules. The objective of this skill was to let you keep up to date with your schedule without ever having to pick up your laptop or phone by asking when your shift is. However, I think it would become more useful if it could also answer any work related schedule questions you may have. It would also be useful if you could connect the skill to any work scheduling app.
Besides looking to see if this type of skill already existed, I also did some user research by asking my high school colleagues some questions about my concept. Some insights I gathered from this is that they thought that this would be super useful if they could connect the app we use for scheduling to Alexa. That way they could easily ask when their next shift is or any other useful questions without going on their phone and looking for the answer. They also mentioned that multiple times they forgot they had a shift or misread their schedule and thought they had a shift when they did not. This became frustrating because they would end up being late or showing up when they did not have to. If they could have just asked Alexa if they had a shift that day it would clear things up and make them a more reliable employee. I also asked them what type of questions they would like to be able to ask if this was an actual Alexa skill, which helped inform my design process when it can to question development. Overall, I found out that they thought that this type of skill would be super useful and help them keep on track.
After determining the needs of my users, I decided to create a skill that would allow the user to ask work schedule related questions and then provide them with the answer. I started by writing a list of questions that I thought one would most like to be answered. I even asked my high school colleagues what questions they would like to be able to ask it. Once all potential questions and answers were created I created two flowcharts.
These flow charts illustrate the setup process and daily user use of my skill. The first flowchart illustrates the process one would go through setting up their skill. The other one shows how the skill would be used regularly once setup.
For my skill, I looked through all the different blueprints that were available to see which would work best for what I wanted my skill to do. After trying a couple of skills I ended up using the Business Q&A blueprint for the daily use. The reason I chose this skill is because I needed a blueprint that allowed the user to ask Alexa specific questions about their own schedule that is not a part of their calendar but on a different app entirely. This also allowed me to provide additional information to the user like instructions and information.
For the setup function I had to use a different blueprint that allowed Alexa to ask the user questions. After trying a couple of different blueprints I ended up using the Story Quiz blueprint because it allowed me to control the order of the questions and add multiple responses.
I first had my family members pretend that they were in high school and test using my skill. I gave them a couple of task to complete:
- Find out when your next shift is.
- Find out who you are working with.
- Find out how much money you will make in your next paycheck.
- What will you do if you can not work your next shift or will be running late.
- Try asking your own question about what you would like to know about your schedule
Overall, all the people I tested were able to complete the task. When a task failed it was my own blueprint error but these fails allowed me to edit my skill by formulating every possible way a user could ask a specific question. Adding different acceptable questions to account for the different ways people say things. For example, on task four some would say “find cover for my next shift” while others would just say “I can’t work Saturday”. I was also able to add questions that I never thought of adding until user testing. I even edited the answers to give the user the best information for what they want to know. The original version had only basic questions but now you can ask the skill almost anything based on your work schedule. Some questions I broke down a lot to make it easier for users to get information in a fast way. For example, instead of saying “How much money will I make in my next paycheck?” you could just say “Paycheck?” and it will estimate your next paycheck.
Usability Study Analysis
I then did a usability test of my skill with my fellow classmates. I gave them the same couple of tasks to complete, that I gave to my first group of user testing I talked about earlier.
What I wanted to learn is that if they were a high school student or college student with a part time job, would they find this skill to be helpful and or convenient? Were they able to complete the tasks easily, and what could be improved? Really, I wanted to know what potential users would like to see in this skill, what questions would they like it to be able to answer? How would different users ask questions, so I can better edit all the permutations for how a person might ask a question.
Overall, the feedback for my skill was pretty positive. Everyone understood the purpose of the skill and thought that it would have been a convenient skill to have with their part time jobs. A lot of users expressed that they loved how the skill would provide the user with the most responsible option. Another feature users seemed to enjoy was the paycheck feature with some even suggesting ways to improve it like have a paycheck calculator. That way people could calculate their pay if they added or subtracted a shift. Some users expressed that this skill would only be useful if the user did not have a set schedule.
Through this user testing I was able to figure out the different ways people would ask a question and the types of questions people would like to see it be able to answer. As people use the skill, questions will organically come out. They will help to improve the skill as well, so that it will be able to answer any sort of question. Some questions that users tried that were not implemented yet or permutations of questions to implement are:
How do I change my schedule?
Change my schedule?
I would like to know more about my schedule?
What are my current hours this saturday?
Give me information on this shift?
What times do I work?
Weekly schedule w/ hours?
How many hours am I working?
Who is my Manager?
How much am I getting paid?
How do I get to work?
What do I have to wear to work/work uniform?
Fastest way to get to work?
Call the office?
Covid procedures/safety info?
Overall, all users seemed to find this skill to be pretty easy to use and an impressive start. They thought that it would be helpful and convenient. All were able to easily complete tasks provided and offered ways in which to improve the skill. They even asked questions that I originally had not thought of inputting until testing.
- 8 out of 8 users said they would find this skill to be useful and would use it if it were to become a real skill.
- 8 out of 8 users would like to see how it would work when it is attached to a visual app.
- 5 out of 8 users asked the skill original questions that I did not think about adding until viewing the user tests.
- 3 out of 8 users suggested editing punctuation of the skills answers so that they are not said as fast.
- 3 out of 8 users suggested questions that were already in the skill without testing to see if they were in it.
- 2 out of 8 suggested providing users with a list of all possible questions that one could ask.
Improvements to implement in the future
From my user testing I was able to figure out more possible questions that my skill could answer to be improved. I also found out the punctuation of sentences could also be improved. Another thing that was suggested to improve the skill would be to integrate the answer for “when is your next shift,” with the question about “more information about your next shift”. This way the user will get all the information they need in one easy step rather than have a whole conversation to get the answer they want.
I also got a lot of suggestions on how to improve the skill even more beyond the basics, which would be my next steps in improving the skill if this was to become a real skill for users. This would include adding a transportation feature. That way users find out the best way to get to their work with one easy question. Users also thought it would be useful to implement a message feature. Where you would record your message to be sent to your coworker. This goes hand in hand with the next suggested improvement. In which the skill could go further than just being used in an at home setting, by implementing it into the workplace as well. That way managers and employees could use an announcement like feature to get messages across like an announcement about everything one would need to know about that day at work.
Overall, there are a lot of potential improvements that could be implemented into this skill. However, I think that the next big step to improve the skill would be the actual integration with a work scheduling app. That way the app could automatically generate the answers to your work schedule without having the user input their schedule each week. If I was able to accomplish this next step, I think that it would greatly improve the experience.
Usability Study Videos
What did you find most challenging about creating this skill?
Since I was not able to connect my skill to an already existing app, the setup feature and my daily use feature is all really just a concept. While it does answer the questions the user would have at the moment, I was only able to input the data for the week. If the user would like to know information for other weeks they would have to input the information into the blueprint. If I could find a way to connect it to the app it would be used with, it would become way more convenient and easy to use.
I also found it difficult to find a blueprint to create what I wanted to create. Whatever blueprint you chose you were not able to edit it much more than what it was already programmed to do. I think that if I wanted to exactly create the skill I envisioned I would have to code my own skill instead of using blueprints and see if any work scheduling apps would like to partner up with me to create this skill for their app. Another challenge, like mentioned earlier, was writing in all the different ways a person might answer or ask a question.
What are you most proud of?
What I am most proud of is how I was able to use the blueprints I chose to create a believable skill. That worked for almost any work related schedule question, said in any order. That means you can ask as many questions as you want or just one and still get your answer. I was also proud at being able to determine a lot of different ways someone might ask a question. It allowed me to think outside the box and be more creative. Overall, I think I was to create almost every possible variation to create an almost flawless concept skill but I still could have missed some that further testing will help flush out.
In the end, even though my skill is not perfect I am still proud of what I was able to create with no prior skill with Alexa voice design. I really learned more about the design process of voice interface design and now feel like it really is a process of trial and error as every user’s voice patterns can be different then what you originally programed.