Inspiration

The genesis of this idea started when Daniel enquired about the possibility of using a bot as an intermediary for Azure DevOps. More and more thought about his goal made us see the wider impact this could have as a means of providing a great portal into Azure DevOps for persons who are visually challenged. By speaking to a bot, either in Teams or in Alexa, a dev could get up to speed on projects, add updates and stay in the know.

What it does

This solution allows one to manage workitems in Azure DevOps using a bot. Since the bot is built using Microsoft's Bot Framework, we were able to take advantage of it's numerous channels to expose two critical ones in the context of accessibility: Microsoft Teams and Amazon's Alexa.

How we built it

The bot is built using Azure Bot Framework Composer, including the use of Azure Functions, Azure AppInsights, and critically, the Language Understanding and Intelligence Service (LUIS). By using LUIS, we were able to leverage machine learning services without having to handcraft AI language models ourselves. This has given us versatility at the input layer, allowing users to utilize a range of messages to get a specific function fulfilled. At the moment, the bot will create, search and even update Product Backlog Items, Bugs and Tasks on a configured Azure DevOps project.

Challenges we ran into

LUIS is powerful, but needs deep understanding to avoid certain pitfalls while building with Bot Framework Composer. For example, figuring out how to flow with triggers, dialogs and inputs led to many an hour of frustration.

Accomplishments that we're proud of

When we determined to pursue supporting visually impaired developers in their use of Azure DevOps for workitem creation, we understood we would need feedback from persons who were visually impaired. Thus, after a few enquiries, we were able to confirm with a group of developers on WhatsApp some of their needs. They validated the choice to use LUIS as some mentioned that working with bots in the past, they found them unforgiving and brittle.

What we learned

It's important to not bite off more than you can chew. Better a little with peace than plenty with frustration. Azure DevOps alone is a huge platform, that can certainly benefit from a voice-first or even voice-only interaction layer, but each aspect of Azure DevOps would need to be considered in depth to determine the appropriate conversational user interface, especially if the goal is to have a high impact on accessibility. Conversational UI is hard! LOL.

What's next for Devika - The Azure DevOps virtual assistant

Since the idea for Devika was in the context of providing a meaningful intervention in our work context, Daniel and Irwin hope to deploy the bot in their workplaces, get more feedback and keep refining the solution.

Built With

  • azure
  • azure-bot-framework
  • bot-framework-composer
  • c#
  • luis
Share this project:

Updates