6

We are reaching out for suggestions for a new architectural approach for our software.

Currently we are working on the development of a new front-end for our ERP, and our framework of choice on the time we started was GWT+GWTP for the front-end.

Our first Idea was to have a single page application running a composed GWT application where functionalities were modules aligned beyond a main module.

Now we are reaching a critical phase of the process where we are actually creating the system functionalities. But we are facing serious problem with this approach. At this point we have 41 GWT modules being compiled as dependencies of our main module with more that 3GB of ram and taking 8-12 minutes. We are expecting to have more that 400 modules at the end of the current development phase, and it will become unsustainable in terms of computer power to compile the application.

We already took a look on some articles like Ben Northrop's one at http://www.summa-tech.com/blog/2011/02/22/structuring-gwt-modules-for-large-applications. But we wanted other opinions on this matter.

vkrausser
  • 393
  • 1
  • 3
  • 17
  • Did you consider to split the application into multiple host-paged compiled as different applications? In this case a recompile of on application can be done without rebuild all. Whch GWT Version do you use? GWT 2.7 has an incemental compile,which may hep to speed up the process, if you have lots of modules. Only modules with changes code will be recompiled. – Christian Kuetbach Jul 08 '15 at 15:05
  • Hi @ChristianKuetbach! Yes in deed we are considering multi hosted pages. We are using GWT 2.7. But we would prefer a single-page approach once it's suppose to work with that desktop application appeal. I'm also studing Robert Keane material from GWT.create 2013 and it's quite interesting approach at http://pt.slideshare.net/RobertKeane1/turducken-divide-and-conquer-large-gwt-apps-with-multiple-teams – vkrausser Jul 08 '15 at 19:47
  • multi module project is really a nice thought - try using maven with along with it - – Ashish Shetkar Jul 09 '15 at 09:55

1 Answers1

1

We are also using GWT and we have more than 40 sub modules and one main module. We are supporting two browsers currently.

  • To speed up the development, we compile only for one browser which we use for debugging the application. This saves us from compiling for other browsers during development.
  • We also provide support for internationalization but during development we compile only for English language. This saves us some more compile iterations. If there are issues with language or browser then only we compile for that language or browser.
  • One more thing is we compile and load only the required modules based on the module dependency.
kkishere
  • 154
  • 2
  • 13