工作至今,已负责过两个企业级应用的整体架构,设计的过程中有些浅薄的体会,总结出来与大家分享,同时也梳理自己的思绪,深化认识。所谓企业级应用和公网应用不同,她服务的群体是企业内部员工及企业的客户,旨在提高企业内控管理和业务开展效率。信息时代,企业作为商业组织,要从易变的客户需求和激烈的市场竞争中脱颖而出,势必要求企业级系统不但要有强大的功能,保证业务数据的安全性,还要易于升级和维护。做为企业级系统架构师,我认为应重点关注以下四点:
1. 深刻掌握业务需求,正确理解用户期望
业务需求绝不仅仅是系统分析师的事情,作为架构师对业务的理解至少和分析师一致。企业级应用的需求分析,往往从和业务员的沟通开始。需求交流时,除讨论业务流程外,用户往往也会表达对系统功能实现方案的期望。此时,不要急于答复用户,理解用户期望背后的业务逻辑更为重要。用户是业务的专家,而我们是系统解决方案的专家。试想,在汽车发明之前,如果你问用户需要怎样的交通工具,他肯定会告诉你需要一匹千里马,如果福特公司按照这个需求去努力,不可能发明汽车。可见,只有抓住业务的本质,才会设计出优秀的系统。
2. 以统一的技术架构,实现复杂多变的业务需求
企业的业务往往是灵活多变的,各条业务线之间也会互相影响,彼此依赖。所以,要设计一个灵活的系统,就要求从需求层面深刻理解,挖掘出各条业务线的依赖本质,进而从技术架构上实现各业务线的解耦,简化系统实现的复杂度,切忌“头痛医头,脚痛医脚”,造成业务复杂度爆炸。在前文提到的PE基金系统中,我们将所有的业务流转都依赖于资本账户;同时,业务流转的结果也将反馈到资本账户之中,形成业务流转回路,最终实现各业务线之间的互相影响。从而做到,可以非常容易的支持新的业务创新,而不用影响现有业务。
3. 谨慎确定系统架构方案,快速推进系统实施
常说“做正确的事情比正确的做事更加重要”。系统架构方案是对业务需求,从技术的角度进行表述。如果架构方案有局限,何谈满足业务需求。从项目管理的角度讲,执行项目的早期发现问题成本最近。所以,架构师应该谨慎对待架构方案的确定,做决定之前,应该在项目组内进行架构审核后再做决定,不要担心后续的开发时间没有保障。架构方案讨论是一件重要不紧急的事情,在优先级矩阵中,他是常常被人忽视的事情,同时也是你与众不同的突破口。
4. 关注行业及竞争公司的动向,借鉴优秀的系统设计理念。
仅仅埋头苦干,不仅不能设计出优秀的产品,反而容易导致闭门造车。所以,埋头苦干之余,长抬头看看别人的成果。架构师应该经常关注最新的系统设计的优秀理念,还要关注整个行业的发展态势。对于设计出优秀的企业级系统都是至关重要的。