• 软件系统分析与设计(软件设计师笔记)


    😀前言
    数据库设计是软件系统分析与设计中的关键环节之一,它为系统的数据管理提供了坚实的基础,确保了数据的高效存储和检索。在本章中,我们将探讨数据库设计的关键步骤,从用户需求的分析开始,逐步深入研究概念设计、逻辑设计和物理设计。这一过程不仅涉及技术方面的知识,还需要与用户进行紧密合作,以确保最终的数据库系统能够满足他们的需求。

    🏠个人主页:尘觉主页
    在这里插入图片描述

    🧑个人简介:大家好,我是尘觉,希望我的文章可以帮助到大家,您的满意是我的动力😉

    在csdn获奖荣誉: 🏆csdn城市之星2名
    ⁣⁣⁣⁣ ⁣⁣⁣⁣ ⁣⁣⁣⁣ ⁣⁣⁣⁣ ⁣⁣⁣⁣ ⁣⁣⁣⁣ ⁣⁣⁣⁣ ⁣⁣⁣⁣ 💓Java全栈群星计划top前5
    ⁣⁣⁣⁣ ⁣⁣⁣⁣ ⁣⁣⁣⁣ ⁣⁣⁣⁣ ⁣⁣⁣⁣ ⁣⁣⁣⁣ ⁣⁣⁣⁣ ⁣⁣⁣⁣ 🤗 端午大礼包获得者
    ⁣⁣⁣⁣ ⁣⁣⁣⁣ ⁣⁣⁣⁣ ⁣⁣⁣⁣ ⁣⁣⁣⁣ ⁣⁣⁣⁣ ⁣⁣⁣⁣ ⁣⁣⁣⁣ 🥰阿里云专家博主
    ⁣⁣⁣⁣ ⁣⁣⁣⁣ ⁣⁣⁣⁣ ⁣⁣⁣⁣ ⁣⁣⁣⁣ ⁣⁣⁣⁣ ⁣⁣⁣⁣ ⁣⁣⁣⁣ 😉亚马逊DyamoDB结营

    💕欢迎大家:这里是CSDN,我总结知识的地方,欢迎来到我的博客,感谢大家的观看🥰
    如果文章有什么需要改进的地方还请大佬不吝赐教 先在次感谢啦😊

    第十一章 软件系统分析与设计

    数据库设计的步骤

    1. 用户需求分析
      • 在这一阶段,与用户进行密切的沟通,以了解他们的需求和期望。
      • 创建需求说明文档,其中包括系统应该支持的功能和数据需求。
      • 开发数据字典,用于描述数据元素和它们的属性。
      • 绘制数据流程图,以可视化数据在系统中的流动。
    2. 概念设计
      • 在概念设计阶段,将用户需求转化为高级抽象的数据库模型。
      • 对数据进行分类、聚合和概括,以确定实体、属性和联系。
      • 选择合适的数据模型,如实体-关系模型(E-R 模型)。
      • 开始设计局部应用的 E-R 图,以表示数据实体之间的关系。
      • 合并不同 E-R 图之间的冲突,如属性冲突、命名冲突和结构冲突。
    3. 逻辑设计
      • 在逻辑设计阶段,将概念设计中的模型转化为具体的数据模型,通常是关系数据库模型。
      • 确定如何将 E-R 图转换成指定的数据模型,通常是关系模型。
      • 确定数据的完整性约束,如主键、外键和唯一约束。
      • 确定用户的视图,即哪些数据将对用户可见,以及如何访问这些数据。
    4. 物理设计
      • 在物理设计阶段,确定数据库的物理结构,包括存储、索引和性能优化。
      • 选择存储引擎和文件组织方式,以提高数据存取效率。
      • 创建物理表结构和索引,以支持逻辑设计中定义的数据模型。
      • 优化查询性能,包括查询调优和索引优化。
    需求分析

    需求分析阶段的文档:建立需求说明文档、数据字典和数据流程图。

    概念结构设计

    对需求分析阶段所得到的数据进行分类、聚集和概括,确定实体、属性和联系。

    • 选择局部应用
    • 逐一设计分 E-R 图
    • E-R 图合并

    🔺E-R 图之间的冲突

    1. 属性冲突。同一属性可能会存在于不同的分 E-R 图。
    2. 命名冲突。异名同义。
    3. 结构冲突。同一对象在某一分 E-R 图中被抽象为实体,而在另一分 E-R 图中又被抽象为属性。
    逻辑结构设计

    逻辑结构设计阶段的主要工作步骤包括:确定数据模型、将 E-R 图转换成为指定的数据模型、确定完整性约束和确定用户视图。

    😄总结

    数据库设计包括四主要步骤:用户需求分析、概念设计、逻辑设计和物理设计。首先,需求分析阶段确定用户需求,然后在概念设计中将其抽象为数据库模型。逻辑设计将该模型映射到具体数据库结构,而物理设计则优化存储和性能。这一过程确保数据库能够满足用户需求并高效运行。

    😁热门专栏推荐
    想学习vue的可以看看这个

    java基础合集

    数据库合集

    redis合集

    nginx合集

    linux合集

    手写机制

    微服务组件

    spring_尘觉

    springMVC

    mybits

    等等等还有许多优秀的合集在主页等着大家的光顾感谢大家的支持

    🤔欢迎大家加入我的社区 尘觉社区

    文章到这里就结束了,如果有什么疑问的地方请指出,诸佬们一起来评论区一起讨论😁
    希望能和诸佬们一起努力,今后我们一起观看感谢您的阅读🍻
    如果帮助到您不妨3连支持一下,创造不易您们的支持是我的动力🤞

  • 相关阅读:
    怎么将图片进行圆角处理?
    分布式架构介绍
    信息系统项目管理师(第四版)教材精读思维导图-第十章项目进度管理
    抽象类的规则
    409. 最长回文串
    SQL调优方案
    el-form动态检验无法生效问题(已解决)
    品达通用权限系统(Day 5~Day 6)
    22、Mybatis查询功能3(查询结果为一个map集合(一条数据))
    [Rust笔记] 代码写明 Rust 中的泛型型变
  • 原文地址:https://blog.csdn.net/apple_67445472/article/details/133784359