分享
 
 
 

大型MIS软件的开发必须重视数据库设计

王朝other·作者佚名  2008-06-01
窄屏简体版  字體: |||超大  

这篇论坛文章(赛迪网技术社区)主要介绍了数据库设计在大型MIS软件开发过程中的重要性,详细内容请参考下文:

80年代初以来,国内许多计算机专家先后深入一些大型企业,力图开发出理想的大型MIS。实践证明,开发出的大型MIS,多数不很理想。原因何在?据作者一孔之见,其中一条重要的原因,就是在开发过程中对MIS的数据库设计重视不够,没有把它当作一件头等大事来处理。一个大型MIS,如果它的数据库设计出了问题,就是出了大问题,或者说从根本上出了问题。这样的MIS,不会成功,只会失败。既然如此,应该怎样来解决它呢?

一、MIS的基础是数据库

NIS系统包括硬件和软件两部分。MIS的软件,是由文档加程序组成的。它的文档,就是MIS的全部设计说明书。它的程序,就是MIS的全部算法加上相应的数据结构。MIS的算法无非是它的各种录入、修改、查询、处理、输出与菜单程序的算法。MIS的数据结构,主要是指数据库设计中的各种基本表。可以这么说,基本表是MIS的基础。数据库设计既是MIS开发中的重点,又是其难点。说它是重点,因为设计出一套好的基本表需要许多技巧。

MIS的发展是分阶段的,不同的阶段,对应不同的数据库。在MIS的初级(初始与扩展)阶段,对应的数据库为应用数据库。所谓应用数据库,就是针对某项具体的应用而设计的基本表的集合,这种数据库的设计、使用与维护均较容易。在MIS的中级(控制与集成)阶段,对应的数据库为主题数据库。所谓主题数据库,就是针对某方面的主题而设计的基本表的集合,它包括本主题范围内的所有应用项目,这种数据库的设计、使用与维护均较复杂。在MIS的高级(数据管理与成熟)阶段,对应的数据库为综合数据库。所谓综合数据库,就是针对某个大型企事业单位的综合管理信息系统而设计的基本表的集合,它包括本单位的所有主题,这种数据库的设计、使用与维护均很复杂,对设计者、用户与DBA的要求均很高。

二、数据库设计的一般方法

数据库设计分五大步,即数据库需求分析、概念设计、逻辑设计、物理设计与加载测试。需求分析的任务是将业务管理单证流转化为数据流,绘制出数据流程图DFD,并完成相应的数据字典,概念设计的任务是从DFD出发,识别实体及其相互关系,并绘制出实体关系图,即E-R图。逻辑设计的任务是从E-R图出发,确定各个实体及关系的具体属性。物理设计的任务是确定所有属性的类型、宽长与取值范围,设计出基本表的主键与外键,将所有表名与字段名英文化,完成相应的数据字典,在具体的DBMS环境上实现物理建库工作。加载测试工作贯穿于程序测试工作的全过程,整个录入、修改、查询、处理、输出工作,均可视为对数据库的加载测试工作。应该指出,大型数据库的设计不大可能一次顺利完成,上述五大步骤,很可能是一个不断迭代的过程。

三、基本表与其它表

MIS中的数据库是由一组基本表所组成的,一个实体可以用一张基本表来描述,一个复杂关系也可以用一张基本表来描述。所以,基本表可以代表一个实体,也可以代表一个关系。基本表中的字段,就是实体或关系的属性。基本表是存放基础数据的地方,这些基础数据具有五个基本性质。原子性,即表中的数据是元数据。演绎性,即由表中的数据可以生成系统所有的输出数据。稳定性,即表中的数据一次录入、多次使用、长期保存。

规范性,即表中的数据满足第三范式。客观性,即表中的数据是客观存在的数据,不是主观想象中的数据。

MIS中的表除了基本表之外,还有一些非基本表,如代码表、中间表、临时表与虚表(视图),它们不属于数据库的内容,但均以表的形式出现,为数据的录入、查询、处理、输出提供方便。利用基本表的五个性质,很容易区分基本表与非基本表。非基本表的设计是不难的,基本表的设计是较难的,MIS中的数据库设计,主要是指基本表的设计。

四、数据库的设计技巧

数据库设计中有两个难点,一是如何处理多对多的关系,二是如何设计主键。处理多对多的关系的办法为:将一个多对多的关系分解为一个一对多的关系加上另一个多对一的关系。例如,若两个表之间存在多对多的关系,就在它俩之间增加一个表,该表的字段中至少要包括前两个表的主键在内。这样,就将一个多对多的关系转化为两个一对多的关系了。

在基本表中,主键是记录的唯一标识。一般而言,主键是为索引文件或表间连接服务的。它对用户不透明,只提供给程序员使用。因此,主键的取值最好为一串无物理意义的数值,且由程序自动加1来实现。主键是一个永久为非空的字段,一旦产生,便不能修改,但可以被拷贝。通过拷贝,这个表的主键可作为那个表的外键。要设计好数据库,除了克服以上两个难点之外,还应遵循下列原则:即基本表的个数越少越好;主键的个数越少越好;字段的个数越少越好。

五、MIS的开发模式

结合我国的特点,大型MIS的开发与大型数据库的设计,均应分为两个层次,即内核层与外壳层。内核层对应法治,设计上讲究通用性。外壳层对应人治,设计上讲究专用性。随着中国经济与世界经济接轨进程的发展,MIS的内核层将逐步扩大,外壳层将逐步缩小,通用性将逐步增强。

当前我国大型企事业单位的MIS建设,少数单位已跨过了初级阶段,开始迈向中级或高级阶段。与此同时,数据库设计已告别了应用数据库时期,开始向主题数据库或综合数据库过渡。主题数据库或综合数据库的设计,与应用数据库设计的本质区别是:前者是面向数据,后者是面向程序。一个大型企事业单位的MIS建设,是一个长期的反复的过程。在这一过程中,应用程序与输出图表可能逐年变动,但基础数据是稳定不变的。只要我们将基本表设计面向数据,不面向程序,用基本表组织好元数据,就能以不变应万变,避免在MIS建设中的失误。

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
2023年上半年GDP全球前十五强
 百态   2023-10-24
美众议院议长启动对拜登的弹劾调查
 百态   2023-09-13
上海、济南、武汉等多地出现不明坠落物
 探索   2023-09-06
印度或要将国名改为“巴拉特”
 百态   2023-09-06
男子为女友送行,买票不登机被捕
 百态   2023-08-20
手机地震预警功能怎么开?
 干货   2023-08-06
女子4年卖2套房花700多万做美容:不但没变美脸,面部还出现变形
 百态   2023-08-04
住户一楼被水淹 还冲来8头猪
 百态   2023-07-31
女子体内爬出大量瓜子状活虫
 百态   2023-07-25
地球连续35年收到神秘规律性信号,网友:不要回答!
 探索   2023-07-21
全球镓价格本周大涨27%
 探索   2023-07-09
钱都流向了那些不缺钱的人,苦都留给了能吃苦的人
 探索   2023-07-02
倩女手游刀客魅者强控制(强混乱强眩晕强睡眠)和对应控制抗性的关系
 百态   2020-08-20
美国5月9日最新疫情:美国确诊人数突破131万
 百态   2020-05-09
荷兰政府宣布将集体辞职
 干货   2020-04-30
倩女幽魂手游师徒任务情义春秋猜成语答案逍遥观:鹏程万里
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案神机营:射石饮羽
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案昆仑山:拔刀相助
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案天工阁:鬼斧神工
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案丝路古道:单枪匹马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:与虎谋皮
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:李代桃僵
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:指鹿为马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:小鸟依人
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:千金买邻
 干货   2019-11-12
 
推荐阅读
 
 
 
>>返回首頁<<
 
靜靜地坐在廢墟上,四周的荒凉一望無際,忽然覺得,淒涼也很美
© 2005- 王朝網路 版權所有