IT folks are usually occupied and overloaded with development & QA work. Thus they tend to miss on updating their daily progress & status of task they worked on. Such miss in updates create big risk for software project and may lead to problems like lack of traceability & delivery slippage. This can eventually result in loss of business.
What it does
We believe big differences can be created with small but “smart & effective” ideas. So we thought to create Virtual Scrum Master, a companion for every engineer working on IT projects. It will engage with them and help them easily log key & timely happenings, updates which can make big difference.
Proposed solution is to leverage human like conversational Chat-bots* to engage with engineers on the channels they visit the most, like, social messenger (Facebook). Combination of social channel & engaging chat-bot empowers team members with ease of access to scrum management tool and thus task status update is no more a problem as it can be done on the move. This will assure current project health can be monitored and risks can be mitigated in timely fashion. Chat-bot* is a smart software, which along with AI can connect with end users via “human like conversation”.
How we built it
We have leveraged power of following technologies for overall solution.
- Amazon Lex: We have used Amazon Lex for building conversational chatbots with natural language understanding (NLU) to recognize the intent of text. Lex enabled us to build applications with highly engaging user experience and lifelike conversational interactions. Lex’s deep learning allowed us to quickly and easily build sophisticated, natural language, conversational bots (“chatbots”)
- Amazon Lambda: We have used Amazon Lambda as the backend for validating user inputs to Lex during conversation and also for fulfilling user request to update task when all valid inputs are provided
- Enterprise connectors like (Rally/Version One): These enterprise connectors are integrated with Lambda to fetch & update data from Scrum tool residing at enterprise backend. In this case, validation Lambda via enterprise connector would be fetching user stories & tasks details from Rally to validate user inputs. Lambda will update the task status and other info once they are available during the concluding fulfillment phase.
- Slack Bot App: We have leveraged the Slack app to enable it as front end of our chat bot. Slack is one of the ideal channel with it’s collaboration and team communication capabilities. It is perfect fit for a team (software project team in this use case). We have created Slack app virtual scrum master app and added it’s bot to software project team slack channel. In our case, software project is virtual scrum master as well
- Facebook Messenger Platform: We have leveraged the Facebook messenger platform to enable Facebook Messenger as front end of our chat bot. Facebook messenger will provide maximum reach as it is one of the most popular social messaging channel in the world. We have hooked-up Facebook messenger with Virtual Scrum Master Lex bot by defining it as one of the channel under Lex bot.
Challenges we ran into
There are quiet of few challenges we have faced while developing this solution and some of them are:
- We faced challenges while dealing with AWS Lex duration slots values
- AWS Lex, does not provide an option to create copy of existing bot
- Facebook has a default timeout where a response from bot is expected, hence there could be more option added in utterances (like wait) to notify front end to keep waiting if processing is taking more time then expected
- There were occasion when AWS Lex web UI was not responding and we had to wait for almost an hour to resume our work
- We observed, “technical error occurred” from Amazon Lex few times, which given an indication that some is wrong at AWS side. This user experience can be improved.
Accomplishments that we're proud of
This solution is a great help when it comes to easing out key operations like task update, which result in timely handling of critical issues. Use of social channels like Facebook, which has a max reach for key operations that can have positive impact on project management & execution. Hence it can have great impact on overall business.
What we learned
- We learned Amazon Lex and its power of NLU to build life like conversational bots.
- Amazon lambda and its integration with Lex and to validate inputs to Lex bot.
- Usage of Amazon polly for text to speech conversion.
- Integration of channels like Facebook and Slack with Lex.
What's next for VirtualScrumMaster
- Integration with other scrum tool platform apart from Rally (like version one).
- Custom client with voice based command support powered by polly