More often than not, you will design a solution that requires some sort of setup, or contains features that need to be slightly different between customers. While you can try your hardest to design a solution that fits everyone, there is an elegant way that we can build our application to allow for this uniqueness.
By using the Discovery pattern, you can build a solution that will allow your application to remain under control, and yet also be quite dynamic. This pattern provides a way for the data that your application relies on to be extended by customers and other partners, without compromising how your application functions. This means that you can in fact build a single solution for everyone.
This recipe will show you how to use the Discovery pattern in your AL coding.