233
Views
16
Comments
Ten Improvements to AI-Assisted Development

First of all, we hope everyone is staying safe!


Last year, we launched our AI-Assisted Development feature, with the core goal of amplifying the skill of all OutSystems developers. But putting our assistant out there was just the beginning. Almost every week since launch, the assistant has evolved with your feedback so that you can have the best possible experience with it.

Here are ten improvements that we have made on the AI-Assisted Development since its launch:


Smarter

  1. The AI-Assisted Development feature is now better at auto-filling and recommending assignments based on the property names that are available in its scope, with an improved prediction algorithm. Available since Service Studio version 11.6.30


  1. It will also suggest the specific destination Screen when it’s able to infer it with confidence. Available since Service Studio version 11.6.29


  1. And when adding an action, properties that match elements in the current scope will be automatically filled. Available since Service Studio version 11.6.25


  1. To top it all off, our feature will also suggest Aggregates with filters using variables in the current scope. Available since Service Studio version 11.6.21


  1. Since Machine Learning models are improving every week, the algorithm can now provide better suggestions overall, in particular mid-flow suggestions. Available since Service Studio version 11.6.21

Previously: The assistant wouldn’t use subsequent nodes’ information.

Currently: The assistant better understands mid-flow context.


Frictionless Experience

One of the core principles of this capability is to enable all users to easily and quickly take advantage of it, without ever getting in the way. There are four main improvements we made to ensure that the assistant provides a great experience for everyone. Check here if you want to find out more about how we crafted this experience.


  1. We found that over 25% of Service Studio users were opening the assistant accidentally when dragging and dropping a connector, so we guaranteed that it wouldn’t happen anymore by adjusting its behavior. Available since Service Studio version 11.6.31

Previously: When dragging the connector over a label, the assistant would pop out

Currently: We increased the node area, so the assistant won’t pop out when a node is nearby


  1. We’ve adjusted the radar’s clickable area and added different mouse icons, so it’s easier to use and has a more predictable behavior. We’ve also made it smoother by fading out the outer growing circle, similar to what you can see in apps such as Uber. Available since Service Studio version 11.6.14


  1. Did you know that more than 80% of the variables with the Record data type are expanded in Assigns? Now, when picking an Assign with a Record Variable being suggested next, the AI-Assisted Development feature will expand its attributes automatically. And as mentioned before, it will also attempt to auto-fill them when it can infer the right values. Available since Service Studio version 11.6.27


  1. Also, considering your valuable feedback, we’ve improved the Variable suggestions when doing a Switch or an If. Now, you’ll be able to set the same variable in the different branches of these nodes. Available since Service Studio version 11.6.27


Better for Novices

  1. Now, the built-in Service Studio tutorial – Help > Build an App in 5 Min – shows how to use the suggestions provided by the AI-Assisted Development feature. Available since Service Studio version 11.6.30


Tips & Tricks

Developers love tips and tricks, and we wouldn’t leave you without a couple of them:

  1. Did you know that if you give a specific name to actions, the assistant will perform much better?

Action with a default name

Action with a specific name


  1. Filling nodes with their properties also allows the assistant to understand you even better and further adjust suggestions accordingly to provide improved assistance. So try to fill all properties and variables before asking for a suggestion.


Next Steps

It doesn’t stop here, and we’re continually working on our AI-Assisted Development feature to provide a better experience and assist you even further. Right now, the next steps are to allow multiple nodes to be added at once (like a snippet), and to provide AI-powered property suggestions as well.

As always, your feedback plays a crucial role in defining the future of our features, so keep using the AI-Assisted Development and let us know how we could add to it even more.

mvp_badge
MVP
Rank: #19

Thanks, all very cool! 

Any news on the AI support on the entity modelling?


mvp_badge
MVP
Rank: #75

Great improvements indeed Antonio! 

Some AI features for BPT would also be awesome :).

Rank: #45

Thank you for sharing

Great document Antonio, thank you for creating this. The demo's in your post even answered one frustration of mine :) 

I do have some questions though;

1. As stated in an earlies post the AI learns from Personal Environments. Will it ever me connected to the Enterprise Environments that OutSystems hosts or that people host themselves? It would be very valuable for me if it learns from our own environment and suggest widgets and actions that match our developer guidelines. If this is already in place, great. If not then I'm not really sure if the algorithm is learning the correct things. Take my own PE for example. There are numerous PoC and WhatIfs in there that don't follow any best practice what-so-ever and isn't really a good learning subject. I rather have it learn from my EE because the code quality in there is much better.

2. Will AI-Assisted development also be updated to analyze the current code and suggest improvements? I can think of performance improvements based on my implementation or finding duplicate code blocks and suggest refactoring (and while we are at it, also implement it).

3. You where talking about a snippet-like feature. Is this something that we can extend upon? Can we create our own snippets and share these with our team or even the community? 

4. I frequently get the "oeps, my brain froze" notification during my development. What can I do to solve these? Most of the times it solves itself by retrying my action but it happens so frequently that I wonder if my own environment isn't the cause for these issues.

5. In some cases the AI doesn't suggest the most logical action at all (like calling a Client/Screen Action). I then need to drag this action manually into the flow. Is there something I can do to help learn the algorithm my specific quirks so it can assist me ever better?

Rank: #364

Nice One.

mvp_badge
MVP
Rank: #160

Great improvements!

Rank: #334

Hi, Antonio, thanks for sharing. Will there in the future also be a generator for CRUD wrappers? It feels a little bit time-consuming to manually create them enverytime i create an entity which has expose read-only enabled.

mvp_badge
MVP
Rank: #163

Great news! Congratulation for the improvements!

mvp_badge
MVP
Rank: #134

Gret news!

Rank: #205

That's great development of the OutSystems and it will make easier to do an application more faster.

Thankx,

Sudip

mvp_badge
MVP
Rank: #129

Thanks, that's valuable!