阿凡达架构平台(Avatar Architecture Platform)(二)
2010-01-28 10:26
309 查看
没想到我的第一篇引起了大家的热评,有人说想法很好,但是没有什么实质的内容。是的,前一篇以及这篇重点在于描述平台的特性、远景、以及基于平台的开发团队组建、开发流程等。后续会有细节的描写,但是大家都知道,架构平台涉及到的方方面面太多了,我尽量的突出重点以及和我以前不一样的新的想法上,过于细节的问题,不会涉及太多。
==========================================================================
开发流程
先回想一下传统的产品/项目开发的基本开发流程:
1) 现场调研->需求规格说明书(包括文字、图表、用例等);
2) 架构设计->架构设计文档(架构图、类图、数据结构、部署图、UI设计等);
3) 开发各模块;
4) 单元测试、集成测试、性能测试;
5) 文档、培训、实施。
使用Avatar平台,开发流程又是如何呢?
1) 现场调研,把用户流程草稿画出来,把用户单据界面画出来,把用户的报表画出来,甚至可以选择用户喜欢的布局、操作方式和界面样式,并当场演示给用户看,直到其满意为止----产品原型阶段。
2) 在原型基础上添加中间层的模型、业务规则、权限规则,调试运行----产品实现阶段。
3) 根据企业的规模、组织架构、软硬件资源、接入终端选择部署方案,另外负责文档、培训以及试运行----产品实施阶段。
如果明确了需求,以上各阶段并无严格的顺序,可以按照想要的组合来进行。也就是说,可以先设计外观,再实现细节;也可以先把细节逻辑实现了,再调整外观;甚至,你可以先实施让用户用一部分,再去设计和开发其他部分。而且,产品实施后用过一段时间,也是可以按照要求来调整的,比如增加功能,比如修改功能等,都非常方便。
团队定义
这里的团队是使用Avatar平台进行产品开发的团队。逻辑上只需要三类角色,一类是架构师,负责项目管理、需求、设计类的工作;一类是开发工程师,负责函数、组件、规则的设置和编写;一类是实施工程师,负责测试、文档、部署、培训之类的工作。按照这样的定义,架构师应该具有比较广的知识面,比较丰富的经验,比如项目管理,需求分析,架构设计都应该懂一点,是团队的“主治医生”;开发工程师只需要编码熟练就可以了,相当于“主治医生的助理”;而实施工程师,做善后的工作,则相当于“护士”。
实际上,团队从1人到多人都是可以的,只不过1人什么都做就是了,人多可以分工一下,如果按照1:1:1的比例可能比较合适,编码的工作相比较传统开发来说,应该是大大减少,复杂的业务规则才需要编码,因此开发工程师不需要太多。另外,他们之间的工作不需要有非常严格的区分的,可以根据实际情况来调整,但是无论怎样的分工,他们的工作都将直接作用于产品----严格杜绝中间不必须要的过程和产品,这也是Avatar平台的基本理念。
==============================================
阿凡达架构平台(一)
阿凡达架构平台(二)
阿凡达架构平台(三)
==========================================================================
开发流程
先回想一下传统的产品/项目开发的基本开发流程:
1) 现场调研->需求规格说明书(包括文字、图表、用例等);
2) 架构设计->架构设计文档(架构图、类图、数据结构、部署图、UI设计等);
3) 开发各模块;
4) 单元测试、集成测试、性能测试;
5) 文档、培训、实施。
使用Avatar平台,开发流程又是如何呢?
1) 现场调研,把用户流程草稿画出来,把用户单据界面画出来,把用户的报表画出来,甚至可以选择用户喜欢的布局、操作方式和界面样式,并当场演示给用户看,直到其满意为止----产品原型阶段。
2) 在原型基础上添加中间层的模型、业务规则、权限规则,调试运行----产品实现阶段。
3) 根据企业的规模、组织架构、软硬件资源、接入终端选择部署方案,另外负责文档、培训以及试运行----产品实施阶段。
如果明确了需求,以上各阶段并无严格的顺序,可以按照想要的组合来进行。也就是说,可以先设计外观,再实现细节;也可以先把细节逻辑实现了,再调整外观;甚至,你可以先实施让用户用一部分,再去设计和开发其他部分。而且,产品实施后用过一段时间,也是可以按照要求来调整的,比如增加功能,比如修改功能等,都非常方便。
团队定义
这里的团队是使用Avatar平台进行产品开发的团队。逻辑上只需要三类角色,一类是架构师,负责项目管理、需求、设计类的工作;一类是开发工程师,负责函数、组件、规则的设置和编写;一类是实施工程师,负责测试、文档、部署、培训之类的工作。按照这样的定义,架构师应该具有比较广的知识面,比较丰富的经验,比如项目管理,需求分析,架构设计都应该懂一点,是团队的“主治医生”;开发工程师只需要编码熟练就可以了,相当于“主治医生的助理”;而实施工程师,做善后的工作,则相当于“护士”。
实际上,团队从1人到多人都是可以的,只不过1人什么都做就是了,人多可以分工一下,如果按照1:1:1的比例可能比较合适,编码的工作相比较传统开发来说,应该是大大减少,复杂的业务规则才需要编码,因此开发工程师不需要太多。另外,他们之间的工作不需要有非常严格的区分的,可以根据实际情况来调整,但是无论怎样的分工,他们的工作都将直接作用于产品----严格杜绝中间不必须要的过程和产品,这也是Avatar平台的基本理念。
==============================================
阿凡达架构平台(一)
阿凡达架构平台(二)
阿凡达架构平台(三)
相关文章推荐
- 阿凡达架构平台(Avatar Architecture Platform)(三)
- 阿凡达架构平台(Avatar Architecture Platform)(一)
- 基于.NET平台的分层架构实战(八)——数据访问层的第二种实现:SQLServer+存储过程
- 基于.NET平台的分层架构实战(十)——业务逻辑层的实现
- 学习.NET (3) Inside GAC --浅析GAC目录架构在不同CPU平台上的工作原理
- 平台网站架构设计之我所见[转]
- 消息发送平台简单架构设计
- 直播平台的高并发架构设计4-案例和总结
- Java构建高并发高可用的电商平台架构实践
- 云架构电子商务平台 java b2b2c o2o
- 第五章 业务架构,5.3 千亿访问量下的开放平台技术揭秘(作者:风胜)
- 淘宝高性能可伸缩平台架构简介
- Android平台架构简介
- 蘑菇街电商交易平台服务架构及改造优化历程(含PPT)
- Windows平台分布式架构实践 - 负载均衡
- 电商平台架构
- ML平台_微博深度学习平台架构和实践
- 经典大数据架构案例:酷狗音乐的大数据平台重构
- 支付平台架构设计评审核心要点与最佳实践
- 构建内容分发平台的技术架构与挑战及AI技术的应用实践