知识卡片
数据库设计五阶段流程及与软件开发过程的同步关系
内容
数据库设计不是孤立于软件开发之外的一个独立环节,而是跟软件开发生命 周期的每个阶段一一对应、同步推进的:需求分析是软件需求分析里”数据 需求”这一部分的具体化;概念结构设计(画E-R图)大致落在软件的概要 设计阶段,此时要确定用什么结构管理数据(关系数据库/图数据库/非关系 数据库)以及具体用哪个数据库管理系统的哪个版本;逻辑结构设计与物理 结构设计包含在软件的详细设计、编码测试阶段,因为编码前必须先有数据库 的逻辑和物理结构才能开始写跟数据相关的代码;数据库实施与维护则跟软件 的运行维护阶段同步——软件编码测试阶段数据库里存的是测试数据,只有 软件正式上线后数据库才开始存储和管理真实数据。这个对应关系说明”先 设计好数据库再开发软件”和”数据库设计与软件开发完全独立”都是错误的 理解:数据库设计的每一步都嵌在对应的软件开发阶段里,被后者的进度和 决策约束,同时也反过来约束软件的编码实现方式。
结构图:
flowchart LR
A[需求分析] --> B[概念结构设计<br/>E-R图]
B --> C[逻辑结构设计]
C --> D[物理结构设计]
D --> E[数据库实施与维护]
A2[软件需求分析] -.同步.- A
B2[软件概要设计<br/>确定DBMS及版本] -.同步.- B
C2[软件详细设计/编码测试] -.同步.- C
D2[软件详细设计/编码测试] -.同步.- D
E2[软件运行维护] -.同步.- E
参考来源
- 位置:《数据库原理(微课版)》第6章《数据库设计》6.1.3节"数据库设计
步骤"(源文件:_epub-src/index_split_004.html)
- 结论依据:原文明确"数据库的需求分析是软件需求分析的一部分……数据库
的概念结构设计大致包含在软件的概要设计阶段……数据库的逻辑结构设计
与物理结构设计包含在软件详细设计、编码测试工作中……在软件进入运行
维护阶段时,数据库同样进入运行维护阶段",因此可以推出数据库设计
五阶段与软件开发生命周期各阶段一一对应、同步推进的结论。
- 原始内容:数据库的需求分析是软件需求分析的一部分……数据库的概念
结构设计大致包含在软件的概要设计阶段……数据库的逻辑结构设计与物理
结构设计包含在软件详细设计、编码测试工作中。