第七章 数据库应用系统功能设计 7.1 软件体系结构与设计过程
; a' K& p* f0 n 7.1.1 软体体系结构
2 j) X2 g/ g3 ~, C+ [ 1、 软件体系结构又称软件架构,软件体系结构={构件,连接件,约束}。! Y/ Q! R8 w; G- r: }
2、 构件是组成系统的具有一定独立功能的不同粒度的程序模块、独立程序或软件子系统,是组成软件的系统元素;
& C0 j% Z3 p7 S# X- n" t 3、 连接件将不同的构件连接起来,表示了构件间的相互作用;
% @% N, a* {2 Z4 I 4、 约束一般是对象连接时的规则,或指明了构件连接的条件。
9 W w4 q' t- Y* w$ B* G 5、 软件体系结构描述了软件系统的总体组织和层次结构、系统元素及其功能分配、全局控制、系统元素间的协调和交互、数据存取等;; ^$ q A3 G' U& t3 _' F
7.1.2 软件设计过程
& \' g/ h! ?. [+ x# a' T' a 1、 概要设计
# t( T) E- J" u+ k/ M Y (1) 定义:是建立软件系统的总体结构和模块间的关系,定义各功能模块的接口,设计全局数据库、规定设计约束、制定组装测试计划;1 j) ] G. T+ n: _3 V
(2) 一个好的概要设计要求是:良好的总体结构、功能模块间较低的耦合度和较高的内聚度,并尽量降低模块接口的复杂性;; i. B/ Y% T3 Z1 v- ~/ r
(3) 可以采用层次结构图表示软件总体结构,图中节点代表功能模块。9 p' O* R; o! J
2、 详细设计9 N& L, [3 H3 g! m: ?( a# ?9 M- ? Q
(1) 是细化概要设计产生的功能模块,形成可编程的程序模块,并用某种过程设计语言设计程序模块的内部细节,为编写软件代码提供依据。
9 O: X/ }) c7 F! a( V (2) 可选用结构化设计方法、面向对象设计方法等;
4 q+ m9 P, z- p% X7 h 3、 关于软件总体设计
' O9 U5 w# i6 p+ E (1) 一些大的DBAS可根据逐步抽象和层次化原则,将概要设计分解成两个步骤:
5 h7 U* ^: R9 r1 u (A) 首先是软件总体结构设计,即对软件需求进行分解;
; R2 t2 w# Z, t C4 Q/ _ (B) 第二步是将每个子系统进一步划分为功能模块,定义各模块的数据结构、相互间交互关系;$ ^, A+ j4 S+ D% g/ t
7.2 DBAS总体设计5 ?+ E0 O; p5 f* p& I" B/ t; C! P
7.2.1 系统总体设计
; g9 Q [0 e0 \ 任务:是根据系统规划与分析结果,特别是技术可行性分析,以及系统需求规范,确定系统总体框架,作为后续设计活动的基础。
' Z/ |8 d$ J8 j* e2 y& ` 1、 确定DBAS体系结构( J c& {9 X0 m) a7 m
(1) 指将系统从功能、层次结构、地理分布等角度进行分解,划分为多个子系统。定义各子系统应实现的功能,设计全局控制,明确各子系统间的交互和接口关系;, k! n- l# ~9 v7 w! h
(2) 可以从功能角度进行分解,也可以根据DBAS自身固有的层次结构特征进行分解;
: b8 `) N& s- ?" p (3) 将系统分解为多个子系统后,需选择和设计合适的系统体系结构,将这些子系统组织起来,并设计它们之间的交互关系;) |- |/ V3 }) p) L3 n4 V; @' Z
(4) DBAS体系结构可采用一些通用体系结构,也可根据DBAS所属的特定应用领域相关的体系结构。5 g! V3 V" v4 E- |5 J+ a- C
2、软硬件造型和配置设计
) ]9 b. o+ f1 G% ^! @" C (1) 总体设计阶段需要对系统的软硬件平台、存储设备、操作系统、数据库管理系统等作出合理的选择,并进行初步配置设计;' R( ?; d2 N7 t8 p) l
(2) 还需要选择系统开发采用的合适的中间件和开发工具,确定开发模式和开发语言;
6 Q" i! O: H/ ]- y: v 3、应用软件总体设计
. \- S8 n% U* A- W 根据系统体系结构,确定相应的软件系统模块划分、功能分配,选择合适的软件体系结构;. i3 m2 ]- L: H& R5 H* H# J
4、业务规划初步设计 |