I am working on a health care application mainly developed in asp.net with Oracle 11g as backend. In its current state the application is divided into 3 layers i-e UI, BLL and DAL. Since the BLL and DAL are class library projects they are deployed as single dll (one dll for BLL and other for DAL). Recently the software was reviewed an another developer who came up with the suggestion to divide whole software into separate modules each having its own projects and database i-e inventory module as InventoryUI (asp.net Web Application project, InventoryBLL (Class Library project) and InventoryDAL(Class Library project). All modules getting three different projects with separate database communicating with each other through web services.
So my questions are
- Is this suggested architecture better than what we have?
- Is it better to have more than one dll for BLL and DAL. What are the pros and cons.
- Is it better to have more than one databases for single application? How?
Any links, suggestion are more than welcome.