Posted on 2005-12-17 20:13
笨笨 阅读(3706)
评论(13) 编辑 收藏 所属分类:
软件开发
架构师的工作就笨笨所理解,其实很简单:
1 把意图表达出来,主要做法是画图。
2 把意图贯彻下去,主要做法是喷,对象是项目组、客户、公司领导。
业务架构的目标按照优先级排列
1 固化开发和测试模式,减小开发人员的自由发挥余地,从而做到:
1 将业务代码实现简单化和固定化,降低对开发人员的技术要求(如要求了解J2EE框架或HTTP交互过程等)
2 复用开发人员的经验,在下个使用业务架构的项目中,不需要再行学习
2 减少项目的基础性
技术代码开发工作和步骤,这里的技术代码,指与业务无关的部分,如配置、日志、文件上传、ORM 等等。这个目标需要在组织级维护跨项目的
技术框架,单靠个人是无法做到的。
3 实现对项目的
业务代码的重用。这个目标几乎不可能实现,业务代码重用的前提是它经过业务专家的提炼、业务过程完整、可完全配置。假如这个目标能够实现,那么开发人员的角色类似于 SAP 实施人员,主要工作是配置,而不是写代码。
国内公司的业务架构实现的困境对于国内公司来说,由于中长期利益与短期利益的冲突,架构一般很难坚持下去。
国内公司限于成本压力,经常会要求架构师在项目中实现业务框架;但是这个目标与项目的直接目标是有冲突的。
业务框架为了达到可重用的目标,是需要比项目完成要多做好多工作的,如框架文档、辅助工具等等,这需要大量的开发工作量,会与项目的直接目标发生冲突,而冲突出现时,公司和项目经理一般都会选择牺牲重用的业务框架这个目标,保证项目的完成。 在项目完成后,公司也很少单独组织人力对项目成果进行评估和重构,结果最终还是得不到一个重用的业务框架。