版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、,Beyond Technology,软件开发过程与质量保证,第十一章 领域模型,第十一章 领域模型,11.1 过程模型 11.2 领域模型概念 11.3 创建过程,领域建模是我们初探面向对象世界的开端,细化 是一般项目中最初的一系列迭代。 对核心、有风险的软件架构进行编程和测试 发现并稳定需求的主体部分 规避主要风险,第十一章 领域模型,11.1 过程模型 11.2 领域模型概念 11.3 创建过程,什么是领域模型,定义 是对领域内的概念类或现实世界中对象的可视化表示。领域模型也被称为概念模型、领域对象模型和分析对象模型。,理解 UP领域模型是UP业务对象模型(BOM)的特化,专用于解释业务
2、领域中重要的“事务”和产品。 领域模型可以被描述成一组没有定义操作的类图(UML表示法)。它提供了概念透视图。 领域对象或概念类 概念类之间的关联 概念类的属性,银行领域模型的例子 任何一个银行“账户”(这里没有详细分类)可能与多个“凭证”相关; 具体而言,凭证可以是银行卡、存折、存单等形式; 任何凭证都有明确的生效起始日和终止日; 但各种凭证的凭证号却不是统一的,比如存折和信用卡有不同的编号格式;,领域模型与数据模型的区别 领域模型不是数据模型。 数据模型的实体对象是通过对数据模型的定义,来表示存储于某处的持久性数据。 在领域模型中,并不会排除需求中没有明确要求记录其相关信息的类,也不会排除
3、没有属性的概念类。 在领域模型中没有属性的概念类是合法的,或者在领域内充当单纯行为角色而不是信息角色的概念类也是有效的。,第十一章 领域模型,11.1 过程模型 11.2 领域模型概念 11.3 创建过程,创建领域模型几个步骤: 寻找(识别)类 筛选类 确定关系 识别类的属性 以当前迭代中的需求为界,类的识别,领域对象类的最佳来源 高级问题陈述、低级需求和问题空间的专业知识。 寻找概念类的三条策略: 1、重用和修改现有的模型 这是首要、最佳且最简单的方法。 在许多领域中,都存在已发布的、绘制精细的领域模型和数据模型。这些领域包括库存、金融、卫生等等。 2、使用分类列表 表中包含大量值得考虑的常
4、见类别,其中强调的是业务信息系统的需求。 该准则还建议在分析时建立一些优先级。 3、确定名词短语,分类列表举例,确定名词短语,筛选类,冗余 表示相同事物的两个名词就是冗余 例如,“图书信息”和“图书的详细信息”,选择简洁的“图书信息”作为候选类。再如,用户能够被藏书者、拣书者完全涵盖,故删除用户;销售价格指名价格的含义,故删除价格 不相关 名词与问题域没有关系 它可能是有效类,但不在当前项目的范围之内。 例如,“员工考绩标准”是个名词,但RP系统不会测量或跟踪员工的工作实绩;电话和传真不是系统所关注的内容。 笼统 名词的描述覆盖面太大,以至于在对某个业务进行描述时,不得不对该名词概念进行细分,
5、单独拿出来根本不能说明问题。例如,“录入信息”包括“图书信息”和“藏书信息”两部分,在应用录入信息进行描述时,必须加以额外说明。 属性 实际上描述了另一个类的结构的名词是属性。,操作 描述某个类职责的名词自身不是一个类,而是一个操作。例如,“税额计算” 角色 描述一个特定实体的状态或其分类的名词多半不是一个类。例如,“最佳顾客”是一个顾客在一定时间下的状态 事件 描述特定时间频率的名词,通常表示了领域必须支持的一个动态元素。例如,“每星期打印一次发票”中的“星期”就不是候选类。 实现结构 描述硬件元素或算法的名词最好是删除或指派为某个类的操作。例如,“打印机”和“复利叶算法”。,关系,建立关联
6、的方法 显式的关联可以从用例中找到 从事件表中找到关联的早期标志 注意 应该避免加入大量的关联,添加关联的注意事项 立即给关联制定多重度,确保每个关联都有明确的多重度 不对用例和时序图进行研究,就将操作分配给类 在确保已满足用户需求之前,对代码进行优化以提高重用性 对于每个“部分(part-of)”关联,就使用聚集还是组合而争论不休 未对问题空间进行建模之前,就假定一种具体的建模策略 在领域类和关系型数据库表之间建立一对一的映射 过早地执行“模式化”,这将导致根据同用户问题毫无关系的模式创建解决方案,整理后的结果,识别属性,1、在什么情况下我们需要属性 当需求建议或暗示需要记住信息时,引入属性 2、获取属性的渠道 查看用例文档,寻找事件流中的名词 查看需求文档,发现系统要搜集的信息 若已经定义了数据库结构,则数据库表中的字段就是属性 选择属性时应考虑的因素 只有系统感兴趣的特征才包含在类的属性中 分析系统建模的目的,也会影响属性的选取,3、每
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 遵纪守法商业运营信誉承诺书5篇
- 软件开发流程与项目管理工具模板
- 中小学语文教育互动式教育方法研究指南
- 回复系统升级计划及影响范围回复函(6篇范文)
- 人力资源招聘与选才综合评估工具
- 市场营销数据分析实战技巧手册
- 采购需求及供应商信息管理模板
- 项目管理流程规范与执行指南指导书
- 员工教育培训成果承诺函(8篇)
- 蓝天白云的美丽景色写景(11篇)
- 2026年一季度湖南能源集团社会招聘520人笔试参考题库及答案解析
- 2026春统编版二年级下册小学道德与法治每课教学设计(简练版)新教材
- 外研社校招会计笔试试题及答案
- 第18课 土壤湿度控制好 课件 2025-2026学年人教版信息科技六年级全一册
- 2025年佛山禅城语文校招笔试及答案
- 美容抗衰培训课件
- 《工业机器人现场编程》课件-任务4-工业机器人电机装配
- 《验检测机构资质认定管理办法(修订草案)》2025版(征求意见稿)修订内容及其新旧条文对照表
- 2025年半导体行业薪酬报告-
- 2026年陕西单招医卫大类护理医学检验专业技能模拟题含答案
- 2026年注册监理工程师(监理工作)考题及答案
评论
0/150
提交评论