本书所述面向事件的数据库系统设计方法,完全不同于传统的ER方法。其以事件树为系统架构,以操作树为程序结构,使得任何数据库系统的全部程序结构都是分层嵌套的,从原理上去掉了容易引起控制逻辑混乱的无条件转向(go to)语句。并且,实现了对描述程序详细设计的操作树的自动化编程。
本书所述面向事件的方法,是计算机软件工程技术的一种崭新设计方法,适用于所有从事计算机软件工作的工程技术人员、科研工作者和大专院校师生。
网站首页 软件下载 游戏下载 翻译软件 电子书下载 电影下载 电视剧下载 教程攻略
书名 | 面向事件的数据库系统设计 |
分类 | |
作者 | 万南洋 |
出版社 | 暨南大学出版社 |
下载 | |
简介 | 编辑推荐 本书所述面向事件的数据库系统设计方法,完全不同于传统的ER方法。其以事件树为系统架构,以操作树为程序结构,使得任何数据库系统的全部程序结构都是分层嵌套的,从原理上去掉了容易引起控制逻辑混乱的无条件转向(go to)语句。并且,实现了对描述程序详细设计的操作树的自动化编程。 本书所述面向事件的方法,是计算机软件工程技术的一种崭新设计方法,适用于所有从事计算机软件工作的工程技术人员、科研工作者和大专院校师生。 序言 本书是关于数据库系统设计方面的专著,在软件工程领域中首次提出了面向事件的数据库系统设计方法。本书的主要成果是构造出了两棵表示软件结构的树:表示数据库系统结构的事件树和表示程序详细逻辑的操作树。对于任何数据库系统都可以用一棵事件树来表示其模块间连接关系;对于任何软件模块都可以用一棵操作树来表示其内部详细程序逻辑,而且实现了对操作树的自动化编程。 数据库模型设计的数学基础是关系代数,现代数据库系统也都是关系数据库系统。作为数据库系统的一种设计方法,面向事件的设计方法也是以关系代数作为数据库模型设计的数学基础。然而,关系代数是从纯数学的角度去研究和规范数据库的模型设计,既不涉及数据库的物理意义,也不涉及数据库系统的程序结构。面向事件的设计方法是从数据库及其变量的普遍物理意义出发,归纳出系统结构设计和模块详细设计的通用方法,构造出既能刻画现实需求,又能表示软件系统的事件树和操作树。从本质上讲,事件树和操作树也是数学模型,其是联系现实需求和系统软件的桥梁。 通常将数据库系统设计方法分为两类:面向对象的和面向过程的。我们常用的方法称为ER方法(实体联系方法),实际就是面向对象的设计方法,或者说面向对象的方法本质上就是ER方法。面向事件的设计方法实际是面向过程的设计方法,事件树中的任一个节点都是一个事件,也是一个软件模块(或称之为过程)。人们在长期的软件工程实践中,总结出结构化系统和结构化程序的概念,认为是最优的软件结构。所谓结构化的软件结构,就是分层嵌套的软件结构,其总可以用一棵树来表示。因此,无论是系统结构还是程序结构,能够以树来表示就是最佳的结构。就结构化设计要求而言,面向过程的设计方法是与之吻合的,我们也果真得到了面向程序模块的事件树,以及面向程序语句的操作树。 人们虽然提出了结构化系统设计概念,但始终没有得到广泛而有效的应用。主要有两个方面的原因,其一是模块的划分没有确定的方法,采用的是无规律的试探性划分;其二是控制流和生产流(传统称数据流)难以分开,以至于模块间的联系无法形成分层嵌套。在作为数据库系统结构的事件树中,上述两方面的问题都得到了圆满的解决。事件树中的事件节点就是程序模块,其划分结果同现实需求是一致的,划分方法既有严格的规定又是自然形成的。而且,事件树中的控制流和生产流是分开流向的,模块间的联系既简单又规整。 事件树中的每一个事件都是一个程序模块,都可用一棵操作树来表示其详细逻辑结构。在结构化程序详细设计方面人们也作出了很大的努力,总体上看进展不大。我们常用的表示程序详细设计的工具是程序框图,而程序框图本身就是网状结构,很难做到分层嵌套。操作树是一棵二叉树,其所表示的程序结构肯定是分层嵌套的,按操作树编制出来的程序脉络清楚,永远不会出现无条件转向(go to)语句。操作树的结构规整,设计方法简单,具有良好的可读性,可按标准化的要求管理软件产品设计文档。 作者是一个从事计算机应用软件设计开发工作20多年的工程师,深知软件工程师们的辛劳,他们为应用行业的智能化自动化设计软件,自己的工作却全部是手工劳动,甚至连辅助设计的工具都没有。当我得到上述两棵树的时候的确激动不已,而发现能对操作树进行自动编程时就更加欣喜若狂。“我们终于可以自动化编程了!”,我们不但可以像机械制图那样对着屏幕设计事件树和操作树,我们还可以将图纸上的操作树(当然是存在计算机内)自动地加工成产品(程序)。这是上帝对软件工程师们的恩惠,赐给了我们两棵宝树。 本书共分四篇二十章,都是围绕上述两棵树的设计而展开的,其中一个重要的概念是“原子事件”。本书所介绍的参数事件、业务事件、统计事件和展示事件都是从普遍意义上来讨论的,结合到具体的系统就会有许多具体有趣的原子事件。正因为有各种各样的原子事件,才会有各种各样的系统。本书的最后一篇(第四篇)给出了一个面向事件的辅助设计系统,虽然这个辅助系统的结构还比较简单,但从中也可以看出面向事件设计方法的优异表现与广阔前景。 本书的读者应该掌握数据库系统,常用算法语言(如C语言),数据结构,离散数学,算法设计与分析,数理统计等课程的基本知识,最好还从事过数据库系统的设计与开发工作,这对于阅读和理解本书的内容将会大有帮助。 面向事件的数据库系统设计理论与方法是首次被提出,其所涉及的基本概念和命题结论相当多,本书的叙述无论从深度还是广度都远远不够。尽管如此,作者还是决定把它公布于世,以便有更多的同行来参与,使面向事件的设计方法为社会作出贡献,并在应用实践中得到进一步的深化与提高。 万南洋 二OO四年十一月十八日 |
随便看 |
|
霍普软件下载网电子书栏目提供海量电子书在线免费阅读及下载。