2.1.1 应用系统的开发过程
开发一个复杂的数据库应用系统时,合理的设计步骤将大大优化系统设计效率。不同系统的开发步骤可能不尽相同,下面将给出常见系统开发步骤的建议,参见图2-1。
图2-1 应用系统开发过程示意图
1.确定系统功能需求设计
这一步是系统分析与系统设计的综合,实际上是对应用程序进行规划。在设计应用程序之前进行认真细致的规划可以节省大量的时间、精力和资金。
在开发之前所做的设计方案往往会对最终结果产生很大的影响。许多问题都应在深入开发之前加以考虑。例如,这个应用程序的用户是谁,用户的主要操作有哪些,要处理的数据集合有多大,如何处理,等等。这样就明确了用户对本系统的需求和本系统应该能达到的功能。
数据库设计是应用程序开发中最关键的一步,要根据系统所处理的数据、用户对系统的需求、系统的功能等多方面来考虑数据库的设计。主要考虑需要几个数据库,每个数据库中应包含几张表,各表又包含哪些数据,各表之间应该存在哪种关系。
数据库的设计可以按照下列步骤进行:
(1)确定使用数据库的目的
首先应明确使用数据库的目的,想从数据库中得到的内容。
(2)表的设计
确定数据库中的表是数据库设计过程中技巧性最强的一步。因为从数据库中能得到结果不一定就能得到设计表结构的线索,它们只是告知从数据库中可得到的东西,并未告知如何把这些信息分门别类地加入到表中去。一般确定表的方法是考察最终想从数据库中得到何种信息,再将这些信息进行分组,每个分组就是一个表。
(3)字段的设计
表中所包含的字段应该与表的主题相关联。一般在几个表中不应包含重复的信息,如果某个字段对某些记录没有数据,则说明这个字段不应该属于这个表。在进行字段设计时,应保证每个表中至少有一个主关键字字段,这个字段可以用来唯一地鉴别每一个记录,也就是说主关键字字段不应该出现重复值。
(4)确定关系
表之间的关系有3 种:一对一、一对多和多对多。在表之间确定合理而准确的关系,对程序的开发有很重要的影响。要明确哪些表之间存在一对一的关系,哪些表之间存在一对多的关系。而多对多的关系通常要将其分解成两个一对多关系,也就是说将两个表分成3个表。
2.应用程序框架与项目的创建
从这一步开始实际上进行了系统实施的阶段。Visual FoxPro应用程序中包含程序代码、数据、表单、菜单、类库、报表和标签及在程序中使用的各种图片文件等信息。为了便于对这些信息进行有效管理,需要将它们分门别类放在相关目录中。这样首先就要为应用程序创建一个目录结构,该目录结构的典型形式如图2-2所示。假设应用程序所在的文件夹为“XSGLXT”。
图2-2 应用程序目录结构的典型形式
该目录结构既可以通过Windows资源管理器手工创建,也可以使用Visual FoxPro所提供的“应用程序向导”来创建。应用程序向导既可以为一个新的系统创建一个新的项目,也可以为已经设计好的系统生成一个应用程序。如果在向导中选择了“创建项目目录结构”,向导会创建一个目录结构,这个目录结构分别为数据、表单、类库、菜单等各自创建的目录。如果不选择此选项,向导会将所有数据文档放在一个目录中,该目录与和用户指定的项目文件的目录相同。
当目录结构创建完成后,即可创建项目。如果使用“应用程序向导”,则项目就已经创建好了。如果是手工创建的目录结构,就必须再新建一个项目。利用Visual FoxPro开发应用程序时,要保证所有的开发均在项目管理器中进行。
3.创建数据库
用Visual FoxPro的有关命令将“1.”所建的数据库、表、关系等逐项建立在项目管理器的“数据”标签中。如果已经有了相关的数据,也可以将其添加到项目中。但是要保证所有的数据信息必须都存放在Data文件夹下。
4.创建新类与利用现有的类
类是面向对象程序设计的灵魂,因为类实现了资源的充分共享,同时类也真正实现了程序的再生。
5.创建用户界面
用户界面包括表单、工具栏和菜单。应用程序的所有功能一方面要通过用户界面与用户联系,另一方面是通过界面上的相关对象来驱动。界面直接表现了一个应用程序的功能。用户对应用程序是否满意,很大程度取决于界面是否友好。至于类模型是否简洁,代码是否精致、解决难题的方法是否巧妙,这一切用户是看不到的。用户所能看到的只是界面,所以设计者要充分利用各种工具创建富有吸引力并且功能丰富的界面。这也是系统程序设计中工作量最大的部分。
6.信息的访问与处理
查询与报表是用户对信息进行访问的两种主要方式。但如何进行查询,如何适应用户对信息查询的多变要求,报表中应该包含哪些内容,在信息访问过程中如何对信息进行必要的处理,用户如何维护数据,这一切都是这步要解决的问题。
7.设置主文件
每个Visual FoxPro应用程序都由大量的功能组件组成,它们都可以通过项目管理器进行有效管理。但如果仅仅将各个组件连编在一起,并不能形成可执行的应用程序,还需要为应用程序设置一个主文件。当用户运行应用系统时,系统首先启动项目的主文件,接着主文件再依次调用所需要的其他组件。主文件可以由程序或表单组成。一般应用系统的主文件是通过编程来实现的。主文件的作用具体如下:
设置系统初始环境
作为应用程序执行的起始点
控制事件循环
退出应用系统时恢复先前的环境
注意
每个项目中只有一个文件可以设置为主文件。
8.测试系统
应用程序设计的过程中,常常需要对菜单、表单、报表等程序模块进行测试和调试,通过测试找出错误,再通过调试来纠正错误,以便使程序达到预定功能。Visual FoxPro提供的调试工具可方便应用程序的调试。
9.应用程序发布
应用程序最好能加密,并且能在Windows环境中独立运行,这就需要将应用程序“连编”为EXE的可执行程序,并进行应用程序发布。
10.系统运行与维护
试运行的结束标志着系统开发的基本完成,但是只要系统还在使用,就可能常常需要调整和修改,这需要做好系统的“维护”工作,这包括纠正错误、系统改进等。