业务流设计的规范化实现

原创 2005年04月29日 14:14:00

目前,一般管理应用系统程序设计的实现是通过分析需求,确定业务流程,设计数据库,确定各功能模块,进行系统设计,然后进行编码工作。这样一个系统工程往往需要业务员、项目经理、系统分析人员,数据库开发管理人员和编码测试人员分工合作,才能使系统顺利的进行开发。而这中间很重要的一个环节就是业务流程的确定和数据库的设计。在一般的系统开发中这是两个独立的环节,需要独立的人员和周期。由于需求的变动性,经常出现设计好的业务流程需要调整或整个修改的情况,如果这一情况出现在数据库设计前,一般处理的代价较小,也比较容易调整,但是如果数据库已经设计结束,并且很多部分已经进行了编码工作后再做这种调整就是一件代价很大的工程。因为很多流程和编码对数据库的依赖性很强,如果流程的修改需要改动数据库将导致很多编好的流程和代码必须重新编写,这样用户和开发方都要承担很大的时间和资金压力。

本文作者试图通过应用一种规范化的业务流设计方法较好的解决这一困难。其设计思想是将数据库的设计前置到需求分析和业务流分析阶段,建立一个业务定制阶段,需求的变化体现在业务定制标准数据库中,而不影响或很少影响完整的业务数据库设计,变动的需求最后体现在个别的业务表设计和部分业务的编程中,最大限度的减少其对整体修改的要求,从而达到快速响应变化的需求的目的。

这一设想的具体实现首先体现在业务定制数据库的设计上。其设计思想是进行业务分离,将一个个具体的业务抽象为一些业务类,每个业务类代表一个简单的业务操作。设计一个业务类别表如下表 

这个表等于为这一业务定义了一个概念,然后在业务类参数表中输入某业务类的属性。

由于一般业务类型需要的数据比较固定,这样可以根据描述清晰的参数表建立一个数据库中的业务表。而对于需求经常变化或属性很少的业务,则可以不设计专门的数据库表,而用业务实例参数表表示。

这一设计规范由以下流程实现。

一.业务录入阶段

首先是业务人员或管理人员了解需求后可以直接进入业务定制程序,按其了解的业务进行业务定制操作,录入各分立业务的基本属性。这一阶段对操作人员没有编程能力的要求,只要求将业务流程分解为各个单独的业务,同时将该业务需要的所有对象属性加以说明。在这里业务人员可以参看和修改权限内的业务类别,业务类别的属性也可以增减和修改。

二.业务确认阶段

项目经理对录入的所有业务进行分析,将大的业务进行拆分,尽量使业务具有原子性。然后对业务属性进行归类和整理,对同一业务流中跨不同业务的对象进行统一定义。

三.业务属性分析

数据库设计人员介入,设定所有业务属性的具体数据定义,如数据类型,字段长度、在业务属性中的序号等。这一阶段可以对适合建立数据库表的一些业务属性进行基本业务表设计,以提高后面的处理效率。

四.业务窗口设计

每个业务流的设计基本采取标准设计界面,左侧是业务流的属性和一些功能按钮,右侧为业务窗口,主要显示本业务的业务属性。编码主要是通过一些事件编程而得到当前业务的业务属性,然后将当前业务的属性存入业务实例参数表或基本业务表,完成本项业务。例如图书馆借书,其基本业务属性为读者编号、当前时间、图书编号、到期时间等,在读者实际借书时还需要“借书”的业务类编号和为这次借书分配的“借书”实例编号。把这些都存入业务实例参数表,就完成了一次借书业务。从这里可以看到,实际业务实例参数表里面可以保存很多业务,而且是以纵列的形式保存的。如果业务量不是特别大,实际可以不设计另外的数据库表就可以完成日常管理。当然,对于业务比较固定,业务量比较大的系统,可以设计一些日常的数据库表,把业务参数以这样表的数据形式保存下来。

(未完待续)

审批业务流程设计

一、       引言          审批流是工作流比较简单的应用。审批流的特点是一个审批流模板对应一种单据。在审批流中仅处理单据的状态,如审批通过、审批不通过;审批流中会用到单据数据,如条件中...
  • duzhuo1120
  • duzhuo1120
  • 2014年02月21日 11:31
  • 5808

数据库设计:规范化设计

先看一个表:
  • u013279409
  • u013279409
  • 2014年04月24日 23:59
  • 346

数据库设计规范化的五个要求

通常情况下,可以从两个方面来判断数据库是否设计的比较规范。一是看看是否拥有大量的窄表,二是宽表的数量是否足够的少。若符合这两个条件,则可以说明这个数据库的规范化水平还是比较高的。当然这是两个泛泛而谈的...
  • qinyanbin123
  • qinyanbin123
  • 2013年10月29日 15:01
  • 1365

业务流程测试的方法和实践

业务流程测试是测试人员把系统各个模块连贯起来运行、模拟真实用户实际的工作流程,满足用户需求定义的功能来进行测试的过程。   业务流程测试是系统测试最重要的内容,而测试的依据就是用户定义的需求和测试...
  • yanying861212
  • yanying861212
  • 2013年10月25日 12:03
  • 2194

技术实现(1)之业务日志和监控日志的设计与实现

APDPlat提供了业务日志和监控日志,以便对用户操作进行审计、对系统性能进行调优。   业务日志主要包括数据的增删改日志、备份恢复日志以及用户登录注销日志。监控日志主要包括用户请求响应时间、内存使用...
  • zmx729618
  • zmx729618
  • 2016年11月29日 10:25
  • 2726

关系规范化设计(范式)

关系规范化设计(范式) 标准化表示从你的数据存储中移去数据冗余(redundancy)的过程。如果数据库设计达到了完全的标准化,则把所有的表通过关键字连接在一起时,不会出现任何数据的复本(repet...
  • GiftedWang
  • GiftedWang
  • 2014年06月10日 00:50
  • 481

工作流系统-业务流程模块的详细设计

这部分是我工作流设计论文里的核心,摘出来分享给大家。 业务流程管理模块是本平台的重要组成部分,要实现将已经发布的标准中规范化的流程转化为具体计算机中的流程从而实现流程的自动运转,将标...
  • magic_wz
  • magic_wz
  • 2013年01月11日 13:49
  • 3999

Feed设计与实现

Feed,在社交和信息推荐的App与网站中,基本都会用到的。例如常用的新浪微博,用户登录进入后,展现给我们的就是feed信息流。新浪微博的信息,来自于你关注人所发布的内容。还有微信的朋友圈,今日头条的...
  • gglinux
  • gglinux
  • 2017年03月07日 14:13
  • 1171

数据库规范化设计的五个原则

一:表中应该避免可为空的列; 二:表不应该有重复的值或者列; 三: 表中记录应该有一个唯一的标识符    在数据库表设计的时候,数据库管理员应该养成一个好习惯,用一个ID号来 唯一的标识...
  • u013181313
  • u013181313
  • 2014年11月20日 19:43
  • 885

通用流程化应用审批单设计思路(一)

本文为通用流程化应用审批设计思路表单部分。
  • xiaoyw
  • xiaoyw
  • 2014年12月24日 13:02
  • 2283
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:业务流设计的规范化实现
举报原因:
原因补充:

(最多只允许输入30个字)