I have a ERP project with modules stock, purchases and sales. These are web applications, using hibernate, maven, springMVC and spring security. What is the best way to organize the structure of this project?
1 - Each application being a web module(.WAR);
2- Just one web module.
On both approach there are other modules: core(with daos and services), and commons(with shared utils classes).
I was using the first way, because is easier to split each project with your respectves programmers. But i had problem with spring security configurations.
Any other options?!?
Sorry about my english

- 834
- 5
- 11
-
I'd say a few submodules with jar as packaging (core, commons) and purchases and sales module with war – mfirry Oct 03 '13 at 17:30
-
Do you want to recompile the application when you install a new module ? – Neil McGuigan Oct 03 '13 at 18:08
1 Answers
Your question is very open and answers may be highly subjective. You're stating a very limited number of requirements, hence you can go either direction.
There is a lot to be said for compartmentalizing an application. There isn't many larger organizations around that haven't acknowledged the need to do so. Often that way is paved for people already, i.e. existing guidelines exist that specify the component boundaries. It helps with understanding (sub-)domains, having parallel projects in flight, and very importantly reuse.
That all doesn't mean much if you have no business or technical requirements prompting you to do so. Instead, as a developer, you may rather focus on being prepared for change (once new requirements arise). So, have (unit) tests in place, et cetera. Change should be easy.

- 8,540
- 4
- 41
- 63
-
i did'nt find situations that one project uses many web modules. All example i've seen use multiples modules,however just one module generate a .war. I don't know that is a good approach. Thanks for answer – graell Oct 04 '13 at 12:01
-
I'm working for a Fortune 500 company where my team has regular access to 42 WAR projects (among all teams we share a larger number). But as I said, if making separate WARs makes no sense to you (now) then that is probably the answer you're looking for! Your work should be driven by requirements. – Sander Verhagen Oct 04 '13 at 15:51
-
Thanks for the support. I'll join all my web modules into one .war to facilitate my work. – graell Oct 04 '13 at 16:41