最近我也在搞这个东东,首先你要确定的是,基础模块Foundational Module和业务模块Business Module。在基础模块中定义要接口和基类,让Business Module引用你的Foundational Module,不要反相引用。
另外,你可以还有一些与具体系统无关的基础架构Infrastructure,Foundational Module和Business Module都可以依赖于它,不要反相引用。
最后你的系统=Foundational Module + Business Module + Infrastructure。
至于开发方面就好多了,每个人可以负责多个Business Module或者几个人负责Foundational Module,其实在Web Client Software Factory中就是基于这种方式的:
比如用户表,很多个模块要用,那么就应该事先设计好用户表的结构,比方说面向对象的设计,可以不管数据表,先设计好实体类和相关的接口,把接口扔给别的模块他们就能调用了,具体实现暂时不管,其他模块需要单元测试的就自己MOCK去,到时候集成测试再说了
其他的模块,要调用用户表的就去调接口去,自己也相应地放出一套接口让其他模块调用就行
需要注意的是“最好”不要形成环状引用的关系
可以用网络数据库,大家同时使用网络上的同一个数据库....可能不是最理想的办法但是确实可以实现很多人共同协作使用.....
用户表和一些经常用到的表,譬如在线表,积分表,动作表......应该在一个基础模块中,其他模块的开发应该按照这个为基础的,当然,这个基础模块可以多人维护它.
经常模块中应该有用到的表的实体接口.
偶也跟着学习一下...