记录用户需求时,可以使用一些技巧,当然这部分内容有些可能会超出数据库设计人员的职责:

  ● 努力维护一系列包含了系统设计和规格说明信息的文档,如会议记录、访谈记录、关键用户期望、功能规格、技术规格、测试规格等。

  ● 频繁与干系人沟通并收集反馈。

  ● 标记出你自己添加的,不属于客户要求的,未决内容。

  ● 与所有关键干系人尽快确认项目范围,并力求冻结需求。

  此外,必须严谨处理业务规则,并详细记录。在之后的阶段,将会根据这些业务规则进行设计。

  当该阶段结束时,你应该能够回答以下问题:

  ● 需要哪些数据?

  ● 数据该被怎样使用?

  ● 哪些规则控制着数据的使用?

  ● 谁会使用何种数据?

  ● 客户想在核心功能界面或者报表上看到哪些内容?

  ● 数据现在在哪里?

  ● 数据是否与其他系统有交互、集成或同步?

  ● 主题数据有哪些?

  ● 核心数据价值几何,对可靠性的要求程度?

  并且得到如下信息:

  ● 实体和关系

  ● 属性和域

  ● 可以在数据库中强制执行的业务规则

  ● 需要使用数据库的业务过程

  (三)逻辑阶段

  逻辑阶段的主要工作是绘制E-R图,或者说是建模。建模工具很多,有不同的图形表示方法和软件。这些工具和软件的使用并非关键,笔者也不建议读者花大量时间在建模方法的选择上。对于大多数应用来说,E-R图足以描述实体间的关系。建模关键是思想而不是工具,软件只是起到辅助作用,识别实体关系才是本阶段的重点。

  除了实体关系,我们还应该考虑属性的域(值类型、范围、约束)

  (四)实现阶段

  实现阶段主要针对选择的RDBMS定义E-R图对应的表,考虑属性类型和范围以及约束。

  (五)物理阶段

  物理阶段是一个验证并调优的阶段,是在实际物理设备上部署数据库,并进行测试和调优。