background image

的问题。
2.2.2 系统规划、分析和方案设计
针对一个已经界定清楚的系统,下面的工作便是进行系统的规划、分析及方案设计。
在这个过程中,首先对系统进行规划,进行子系统的划分和系统的实施计划的设计,同
时对系统进行分析,这些分析包括系统的特性和结构的分析、需求分析、系统的可行性分
析等内容,系统规划和分析经常交织在一起。另外,在这个阶段还完成系统方案的设计和
选择工作。
2.2.3 系统概要设计
系统概要设计主要是对系统业务进行流程分析,完成系统的设计以及系统的功能划分和
初步设计,并对系统具体结构和技术方案进行设计。
2.2.4 系统详细设计
系统详细设计包括数据流的设计、数据库的设计、系统模块的详细设计、界面设计、程序流
程的设计等内容。
2.2.5 代码开发
代码开发是按照详细设计的要求进行代码的编写工作。
2.2.6 系统测试
系统测试是在系统投入使用前,对系统的需求分析、设计规格说明和编码的复审。
2.2.7 系统修改、运行和维护
维护系统的运行,保证系统有效、可靠的运转。
2.2.8 系统评价和总结
对系统的完成和运行情况进行评价,总结系统开发过程中的得失,有些好的体会、思想和
资源可以累积下来,并且这个过程还可以对系统的改进和再设计进行分析。
实际上,以上这些过程并不是要求严格按顺序的,前后过程之间存在反馈,这些过程之
间并不一定存在明显的界限。

3 设计方法和设计流程
3.1 设计方法
应用系统的设计方法一般有结构化设计方法和面向对象的设计方法。具体采用什么样的系
统设计方法跟具体的应用实际情况有关,同时也和系统的体系结构有关。而且结构化设计
方法和面向对象的方法并不是互相排斥的,这些方法可以根据实际情况进行组合。
在基于 web 的分布式系统结构中,应用层是连接表示层和数据层的中介,同时也是业务
流程和业务逻辑的具体实现所在的层。因此,应用层的设计是基于 web 的分布式应用系统
设计的中心。在基于 web 的分布式系统的结构中,应用层又可被分为工作流层和业务逻辑
层,其中工作流层的设计一般适合于结构化的设计方法,而业务逻辑层很多时候可以采
用面向对象的设计方法。因此基于 web 的分布式应用系统可以采用结构化的设计方法和面
向对象的设计方法的组合。
结构化的思想主要是基于把一个复杂的问题划分为许多可对付的子问题。令 c(x)是确定
问题 x 复杂程度的函数,e(x)是决定解决问题 x 所需的工作量的函授。对于两个问题 p1
和 p2,如果:
c(p1)>c(p2),
那么显然有:e(p1)>e(p2)。
依据人类解决问题的经验,如果一个问题由 p1 和 p2 组合而成,那么它的复杂程度大于
分别考虑每个问题时的复杂程度之和。即:c(p1 p2)>c(p1  

) c(p2),

最后有:e(p1 p2)>e(p1  

) e(p2)。