业务领域建模Domain Modeling

穿精又带淫゛_ 提交于 2019-12-05 12:06:33

业务领域建模简介

领域建模:领域模型是对领域内的概念类或现实世界中对象的可视化表示。又称概念模型、领域对象模型、分析对象模型。它专注于分析问题领域本身,发掘重要的业务领域概念,并建立业务领域概念之间的关系。

概念:业务对象模型(也叫领域模型 domain model)是描述业务用例实现的对象模型。它是对业务角色和业务实体之间应该如何联系和协作以执行业务的一种抽象。业务对象模型从业务角色内部的观点定义了业务用例。该模型为产生预期效果确定了业务人员以及他们处理和使用的对象(“业务类和对象”)之间应该具有的静态和动态关系。它注重业务中承担的角色及其当前职责。这些模型类的对象组合在一起可以执行所有的业务用例。

设计步骤:领域模型设计是需求分析的关键步骤。它帮助用户及需求分析人员建立业务概念,确定用户业务的问题域,系统涉及的业务范围等等。

领域模型设计的步骤为:

1. 从业务描述中提取名词;

2. 从提取出来的名词中总结业务实体,区分名词中的属性、角色、实体、实例,形成问题域中操作实体的集合;

3. 从业务实体集合中抽象业务模型,建立问题域的概念(例如在前面的例子中,我们把容易变质的水果称之为“短期保持水果”,当然也可以是其它说法,只要能跟用户达成共识即可);

4. UML提供的方法和图例进行领域模型设计、确定模型之间的关系;

 

针对工程实践进行业务领域建模

一、收集应用领域信息

Collect application domain information
-focus on the functional requirements

-also consider other requirements and documents

我的工程实践为《基于深度学习的文本对话机器人设计》,本设计主要是通过数据收集、建模分析并训练优化,使得用户可以通过文本的形式与机器人进行聊天,机器人能够对人类提出的问题做出智能的回应,主要设计的应用场景为满足人类消遣聊天、简单的问答聊天以及智能交互等。主要技术为nlpLSTM循环神经网络和TensorFlow,后期可根据不同场景需要增加技术与系统模式,达到针对不同场景的智能聊天机器人设计。

二、大脑风暴

Brainstorming

-listing important application domain concepts

-listing their properties/attributes

-listing their relationships to each other

1)获取语料库:本实践主要采用中文语料库,获取方法主要是在公开语料库中下载,语料库中主要为中文日常用语的数据。

2)语料库数据处理:对语料库的数据处理主要是对所获数据库进行分词、去除特殊符号、去重等处理,这里可用到正则表达式等方法。

3)预训练处理:预处理中对数据构建词典,通过对词性、断句以及情感等的处理,构建词典。

4)构建神经网络:针对数据集选择适当的神经网络,并通过数据的建模分析不断优化,最终形成适合的神经网络模型。

5)训练分析:将收集的数据集输入到对应的模型中,不断训练并优化最终得到文本对话系统。

三、概念划分

 Classifying the domain concepts into:
-classes

-attributes / attribute values

-relationships
• association, inheritance, aggregation

获取语料库—中文数据集—公开资源下载

处理语料库—分词、去重、去除特殊符合—正则表达式

预处理训练—词典—词性、断句、情感处理

构建神经网络—神经网络模型—LSTM、优化处理

训练分析—训练模型—优化、nlptensorflow

四、UML类图

Document result using UML class diagram

UML类图如下:

 

 

 

 

 

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!