• 《软件架构设计》学习笔记--6--6大步骤2:领域建模


    分析的还有一种重要产品是领域模型,其目标是使负责该系统基本行为的全部核心类可视。 ——Grady Booch,《面向对象项目的解决方式》

    本篇记录6大步骤中的第二步:领域建模。

    包含例如以下内容:

    • 什么是领域模型?
    • 领域模型的价值和意义所在

    1、什么是领域模型

    “是什么”
    领域模型,就是将领域概念(即这个领域内的行话)以可视化的方式抽象成一个或一套模型。


    领域模型比《领域词汇表》更进一步,它不仅关注重要的领域概念,并且它还刻画这些概念之间的关系。
    “什么样”
    就UML而言,领域模型最常採用以下两种图表示:

    • 类图
    • 状态图
      “为什么”
      领域建模是公认的促使OO项目成功的最佳实践之中的一个。

    2、领域模型的价值

    领域模型在软件开发中的作用,如上图所看到的。那么。它的意义又在哪里呢?
    领域建模是探索问题领域的工具,可以帮助我们探索和提炼问题领域知识。

    2.1对于需求人员

    对于需求人员,领域建模可以帮助他们促进用户沟通。解决分析瘫痪。


    需求分析阶段,常会遇到两个困难,

    • 第一个困难,用户的參与不够。造成需求分析成果中如果的成分太多。
      “參与不够”,表现为用户參与不够多,用户參与不够深入。
    • 第二个困难,问题领域太复杂时,需求分析的开展会遇到困难。

    2.2对于开发者

    对于开发者。领域建模可以破解“领域知识不足”的死结。
    破解“领域知识不足”的死结的关键是要“理顺概念关系,搞清业务规则”。

    这恰是领域模型的强项——通过对复杂的领域进行概念抽象和关系抽象从而建立模型。获得对领域知识整体上的把握,就不会掉入杂乱无章的概念堆里。

    2.3可扩展性

    领域建模的输入和输出例如以下图所看到的:
    这里写图片描写叙述
    从图中可以看到。领域模型的驱动因素是功能,反过来,领域模型的质量高低可以决定软件的可扩展性。可以说,“功能决定怎样建模,模型决定功能扩展”。


    功能是领域建模的核心驱动力,也是领域模型评审和改进的驱动力。

  • 相关阅读:
    利用UncaughtExceptionHandler捕获未try...catch到的异常
    nodejs
    angularjs异步处理 $q.defer()
    springboot集成swagger
    面试相关
    springboot注解
    关于自动拆装箱
    sonar集成搭建
    Predicate 类
    idea快捷键
  • 原文地址:https://www.cnblogs.com/mthoutai/p/7272648.html
Copyright © 2020-2023  润新知