We have a lot of very simple tasks that come up all the time at work, and due to the impact they can have on security, can’t be automated away. Some examples include whitelisting an IP for an admin or client, allowing a new file extension to be uploaded for a client, adding a list of email addresses to a distribution list, moving users to other departments or groups within our app (which affects things they see), and many of these types of requests. We already have xUnit tests for each one of these, so when it comes up, we open the codebase, make the changes needed basically plugging data in, and run them. It takes maybe 1 minute to do, but it has about a 30-minute overhead all things considered (reading the task, updating the task, communicating with the person who requested it, opening the project, making the changes, verifying, running, etc.) Basically just a lot of overhead
But I believe there is a simple solution for every problem, especially when an intern or junior developer can just be assigned these boring repetitive things. So we brainstormed for about 5 minutes, and came up with a way of using Microsoft’s LUIS (language understanding service) to extract the intent of a request along with parameters, figure out what functionality to call, and have the capabilities of doing it, but asking permission first.
The concept is simple: