一,层次系统风格
如下图所示,采用层次系统体系结构风格,整个系统的结构可以分为用户层,服务层和
应用层三个层次。
各层的功能分别是:
数据层:主要功能是接收用户发送过来的原始数据信息,对其进行分析处理,得到符合
系统要求的数据,并进行存储。
服务层:是对用户层和数据层来的数据分别进行分析,然后向用户层或者数据层发送信
息。
用户层:包括了学生,教师,管理员所有的用户。
二,面向对象风格
可以采用面向对象分析与设计的方法来对本系统进行分析和设计,首先通过 use case 图对系
统需求进行建模,再发现系统问题域中的对象,并将其抽象成类,进而确定对象之间的各种
关系,建立 OOA 和 OOD 模型,最后采用面向对象编程语言将其实现成具有面向对象风格
的系统。以用户登录系统系统为例,其类图如下图所示:
三,C2 风格
C2 风格的设计方案适合于分布式环境,并且构件支持复用。各个构件并发运行,构件之间
可以传递消息;下层构件可以被替换或升级,不影响上层构件的功能。
在系统总体架构下分为四个二级构件系统:用户登录系统、学生查询成绩系统、教师上传成
绩系统、管理员维护系统和用户修改信息系统。每个二级构件系统分为数目不等的更小一级
的构件。
四,管道和过滤器风格
管道和过滤器风格适合于处理数据流属性。和数据流风格风格有类似的地方,不同之处在于
管道过滤器风格更容易针对小型化系统,因为其数据和功能表示能力相对较弱。在下面这个
管道过滤器风格设计中,可以看到趋于数据流风格设计。
五,各种风格之间的比较
在设计中,我们总结出不同设计风格对软件系统特性的支持程度。可以得出的结论是:不同
的软件设计风格适合于不同的软件系统;对一个软件系统而言,如果能有多种风格的设计,
对于开发过程中从不同角度理解未来的系统是很有好处的,并且可以从这些风格中筛选、比
较,得出最优化的系统设计。
在此基础上,我们完成了系统概要设计。
面向对象 层次化
C2 风格
实时性
软件复用
容错性
可扩展性
可理解性
支持需求变化的
能力
支持复杂系统的
能力
0
+1
0
+1
+1
0
+1
-1
-1
+1
0
+1
-1
+1
0
+1
0
0
-1
+1
+1
管 道 和 过
滤器
-1
+1
-1
-1
+1
-1
-1
数据流
-1
0
0
-1
+1
-1
0