面向业务开发应用
来源:互联网 发布:网络公选课怎么考试 编辑:程序博客网 时间:2024/06/07 22:32
自从计算机出现后,快速便捷的从太平洋一样的文海中找到水滴大小的资料真正成为了可能,而能够帮助人们实现这一愿望的程序员就像中世纪的航海家一样用神秘的代码程序指引着计算机一步一步实现的需求。而他们所用的被称之为“程序”的序列组合,在一般人眼中,有如天书般难读难懂。
即使对于程序员来说,实现复杂的业务需求也不是一件容易的事情,这很大程度上归咎于现有的软件设计模式并不科学。在《探索流程的奥秘之三-如何树立业务流程》中,我们了解到用户关注的是结果(交付物)及结果的状态,而软件设计关注的是操作,而很不幸的是,程序员也是人,这种错位的思考模式很难让人轻易理解。
面向业务开发应用的方式修正了这种情况,它的主要出发点如下:
1. 所有的应用都是由若干业务流程组成
2. 人们在使用应用时,会对所操作的业务流程产生出业务数据来,如每次请假时会产生请假申请信息及执行信息。
3. 业务流程的产生业务数据是分步骤生成的,且根据步骤的执行情况会生成不同的数据,如请假申请只有批准后才会有执行信息。
4. 一个业务流程的业务数据会被另一个流程使用,是因为业务流程之间存在步骤流转,比如启动报销流程是因为有了出差业务,且出差业务中发生了消费。
5. 业务间的关联在数据关系上体现的是A业务记录中包含B业务记录中某项数据的集合,如出差活动的出差人集合。
6. 有时业务之间的关联是由我们并不注意的中间业务担当的。
下面我们以差旅应用为例,来看一看面向业务设计软件的过程:
图一 差旅应用业务流程关系图
人们在日常出差时,最直观的感受到出差、借款及报销这几项业务,各公司针对其均有相应的审批流程及办事流程,但这三个业务流程间的关系如何呢?从图一可以看出:
1.
2.
3.
4.
确定了业务流程的关系后,我们就探究一下每项业务流程的特性。
图二出差业务简单流程图
图二是一个简单的出差业务管理流程图,与一般的框图不同,这张图反映了更多的我们传统软件开发模式下未考虑的细节:
1.
2.
3.
4.
5. 如果跳转到自动执行步骤,计算机应该自动执行该步骤,并进行后续跳转,直到没有后续的自动执行步骤或遇到结束节点。
6. 业务记录的数据是在各个步骤中渐次获取的,可能多个步骤都对同一个数据操作,如创建申请、修改申请、调整出差活动都可修改出差期限。
7. 对于每个步骤的执行,除了传统的赋值计算操作,还会包括特定操作,比如通过审批处理时会针对出差人清单自动创建“出差人活动”业务记录,用于后续的借款、报销处理。
利用普知杰的协同应用系统平台,可以轻松的实现面向业务的应用构建,比如步骤跳转的操作如下:
图三: 流程设置时步骤跳转设置案例
对于使用者,只需要找到对应的业务记录后右键,即可进行相应的操作,如图,可以看到由于图三设置的目标跳转有4个交互步骤跳转,都设置了动态操作人为时间发起人,操作人发起的这条记录可以有4个操作,其在右键操作时可以选择四个步骤中的任一个进行操作:
图四: 业务记录的步骤操作举例
而换另一个操作人时,对于同样的记录,他是执行人,根据动态操作人的设置,他只能进行一个操作
特别要提及的是,经过此方式整理出来的业务记录数据,相互间是有关联关系的,如从员工可以查出其所有的出差、报销、借款记录来。这样就有利于我们快速的查询我们需要的任何信息。普知杰的协同应用系统通过自定义视图的设置,可以快速的实现这种需求。
面向业务开发应用还有很多有意思的特性,利用这些特性可以找到软件设计的通用规律,进而实现自动化的应用系统开发,让我们远离繁复的代码编程,我们后续会推出一个系列文章,欢迎大家指正。有兴趣的人也可以到普知杰网站下载评估版软件进行试用。这个地址可以下载到9个并发数不限期限的试用版系统和说明文档.
- 面向业务开发应用
- 面向业务开发应用:如何避免步骤间操作冲突
- JSP开发业务应用
- JSP开发业务应用
- JSP开发业务应用
- Hbase-业务开发(应用开发)-参考目录
- SharePoint 2010 业务应用开发模型
- (6/11)JSP开发业务应用
- 面向服务的方法在业务规则开发中的运用
- 浅析下一代网络中面向业务开发的开放接口
- 面向对象软件开发和过程(七): 业务建模
- 面向对象开发工具类、管理类、业务类 使用
- 业务应用
- 传统应用开发方式和业务驱动开发方式比较
- 传统应用开发方式和业务驱动开发方式比较
- 没头没尾--项目开发笔记:面向业务的用户界面与面向对象的数据库如何连接
- 企业应用下的业务组件开发实践
- 企业应用下的业务组件开发实践
- 经典软件面试题(1)
- hduoj1466,计算直线的交点数,简单DP
- vs2010环境 c++ 使用htmlcxx解析html
- iphone 声明和使用全局变量
- 经典软件面试题(2)
- 面向业务开发应用
- Java与Flex学习笔记(21)----Flex与Java通信方式之WebService
- 制作Mac/iPhone程序图标的最简单方法
- [一年前写]华为面试官面试
- ipv6 地址简要介绍
- MAC下的SVN服务器建立
- static(二)
- hdu - 4308 - Saving Princess claire - 简单宽搜
- 用汇编的眼光看C++(之判断流程)