开发复杂业务系统,有哪些设计思路