4 Layer Canvas Purpose of Core Widget Modules

We are developing reactive web app as well as mobile app for a customer. The four layer canvas architecture beside end user modules also has core widgets modules. Per my understanding purpose these modules is to hold reusable screens or controls. However, for all the application screens the client is expecting us to put all the screen content in blocks, place them in core widgets and then use them in screens in end user modules. This approach leaves the screens in end user module as plain containers and all the UI controls reside in blocks in core widget modules.

Customer is suggesting this approach so that the same UI blocks can be reused in same or other applications too, and they would be easy to maintain. I advised them that this may be overuse of core widget modules, under use of end user modules and would add implementation complexity too as we would have to manage communication between main screen and block via events.

Please share your thoughts on this.

Hi, Junaid

It is a best practice to keep reusable blocks in that Core layer. I think that if you can keep your blocks organized by business concept. it will be actually easier to maintain, as long as you keep track of each application's features (and if they change the block), and its user roles permissions per app.

Sam

Samuel Neves wrote:

Hi, Junaid

It is a best practice to keep reusable blocks in that Core layer. I think that if you can keep your blocks organized by business concept. it will be actually easier to maintain, as long as you keep track of each application's features (and if they change the block), and its user roles permissions per app.

Sam

Hello Samuel, I agree with keeping reusable pieces in core modules, but keeping all content for all screens there is something hard to digest.


Hi, Junaid,

Not knowing if you're already working on the latest OS11 release, this is probably where the new ReactiveWeb is going to take us. One Page Applications filled with reusable content in the form of Blocks that communicate through events with the screen and with each other. The 4LC is still valid for the system's architecture

Sam

Samuel Neves wrote:

Hi, Junaid,

Not knowing if you're already working on the latest OS11 release, this is probably where the new ReactiveWeb is going to take us. One Page Applications filled with reusable content in the form of Blocks that communicate through events with the screen and with each other. The 4LC is still valid for the system's architecture

Sam


We are using OS 11, I think you are talking about client events, that is driven by the underlying framework. But using blocks or not is yet optional and applicable based on requirements and application design.

Most certainly. Isn't it, however, your practical case at hand one that requires such feature? You client is surely suggesting this with the goal of improving the overall user experience of their apps which is attainable by making use of those client events.

My perspective on this is really that: user satisfaction is the priority nowadays and developers must focus more in personalization and a strong connection between on and offline channels, and that's where mobile and reactive web apps bridge that gap. The development of reusable UI blocks is benefic in that sense; it being the sole or partial approach to implementation.

Sam