逻辑视图
通过用例图和用例规约说明书,基本上我们已经明确了用户的需求和系统的开发范围,下面我们开始系统的逻辑视图建模,逻辑视图主要关注整个系统的抽象结构,我们在VSTS中主要采用类图和序列图进行表述。
业务领域对象分析
在业务领域对象分析工作中,区分不同类型对象以达成对于模型中不同的工作的理清非常重要。按照业界流行做法,我们可以分类出实体类,控制类,边界类。
实体对保存信息和资源的对象的建模,属于系统本质的面的概念性,一般不会随着用例的增多而有所变动。
控制类属于功能行为的抽象建模,而且这个功能和用例有相当密切关系,建议对每一个用例提供一个控制对象。
一般系统边界类一般是与外包桥接使用,用来隔离系统功能,尽可能减少外部环境变化对于系统的影响,一般包含用户界面类,系统接口类,设备接口类。
首先分析系统业务实体对象并抽象建模。
1. 打开VS项目,选择"业务领域模型"添加新项目,选择添加新UML类图项目,并命名为EPSEntity。
2. 在EPSEntity工作区域,右击设置其属性中的Linked Package为 EPS::Logical View::Class,这样我们新加的类自动会在UML资源管理器中这个包出现。
3. 根据前面分析,采购有两种角色(采购经理和采购职员),三个类到EPSEntity工作区域,并分别命名为采购人员,采购经理,采购职员,在采购人员类的属性窗口中设置 is abstract 项为 True,完成后如下:
4.根据业务用例规约描述所涉及的业务实体,完成如下图
5.Ctrl+S,上图中,我们省略了采购计划单和采购请求单的明细,对于类似与这类管理信息系统,在进行业务流域建模的时候,十分准确的抽象出业务实体对象不是那么容易的事情,这个要对行业业务知识深刻理解,同时有具有高度的UML抽象能力,我们可以借助与领域分析中常用的模式 交易模式(Transaction Pattern)去分析。
6.分别给各个实体参照用例实现规约设计的业务实体描述,添加相应的属性。
参照用例分析,控制类建模步骤如下,基本上我们对每一个用例提供一个控制类。
1. 打开VS项目,选择"业务领域模型"添加新项目,选择添加新UML类图项目,并命名为EPSBusinessProcess。
2. 在EPSEntity工作区域,右击设置其属性中的Linked Package为 EPS::Logical View::Class,这样我们新加的类自动会在UML资源管理器中这个包出现。
3. 从工具箱中拖入类图,并分别命名如下图:
4. 控制类我们主要关注操作,对于每个控制要有包含什么操作,我们先期可以结合我们业务分析进行抽象合适的操作,随着我们序列图进一步分析,我们要保护的操作也进一步明确精细, 对于我们控制类的粒度,避免过于庞大,操作选择一个逻辑主线,这个也符合我们类的功能单一原则。以产生"请购需求类"为实例,根据前面业务用例规约描述我们需要添加 "转化物料求购计划到物料请购单"和"推荐厂商"及"通知发送功能"。
5. 分别给请购需求类添加上述操作,如下图。
对与系统边界类,涉及的到用户界面我们一般选择按照用户操作习惯进行划分,对于每一个用例我们一般提供一个用户界面。 注意本系统中,有两个明显的外部系统:ERP和通知系统,为了避免过度耦合,凡是系统需要和他们交互的操作,尽量设计接口类。:
1. 打开VS项目,选择"业务领域模型"添加新项目,选择添加新UML类图项目,并命名为EPSBoundary。
2. EPSBoundary工作区域,右击设置其属性中的Linked Package为 EPS::Logical View::Class,这样我们新加的类自动会在UML资源管理器中这个包出现。
3. 从工具箱中拖入接口,并分别命名如下图:
回头分析刚才我们的"请购需求"控制类,设计到和ERP和通知平台交互,那么"请购需求"和边界类必然发生关系,调整"请购需求"如下
1. 打开EPSBusinessProcess的工作区域。
2. 打开UML模型资源管理器,在Class包中选中"EPSForERP"和"通知发送Proxy"接口拖入EPSBusinessProcess的工作区域。
3. 分别建立"请购需求"和他们关联关系:
4. Ctrl+S保存,下面我们开始序列图分析。
分享到:
相关推荐
RUP4+1架构方法采用用例驱动,在软件生命周期的各个阶段对软件进行建模,从不同视角对系统进行解读,从而形成统一软件过程架构描述.图1.RUP4+1架构图用例视图(UseCasesView),最初称为场景视图,关注最终用户需求,是...
标题中提到的“4+1模型案例[收集]”可能是指一系列关于软件架构设计中的“4+1”视图模型的案例。这一概念是由Philippe Kruchten在1995年提出,并发表于IEEE Software。4+1模型是一个用于描述软件架构设计的框架,它...
**RUP过程与UML模型驱动开发应用实例** 在软件工程领域,Rational Unified Process(RUP)和统一...在《RUP过程与UML模型驱动开发应用实例》中,我们可以深入学习如何在实践中应用这些理论,提升我们的软件开发能力。
4+1视图模型是软件架构设计的一种常用方法,包括逻辑视图、开发视图、进程视图、物理视图和场景视图。这种多角度的视角有助于识别和解决潜在的设计问题,确保软件架构的健壮性和可扩展性。 #### 契约式开发与单元...
3. **角色与职责**:RUP定义了一系列角色,如业务分析师、系统架构师、开发者、测试员等,并明确了他们在项目中的职责,确保团队协作的有效性。 4. **需求管理**:RUP强调需求的重要性,提供了需求获取、分析、建模...
**RUP(Rational Unified Process)**是一种广泛认可的软件开发过程框架,由Rational Software Corporation(现IBM的一...通过深入理解和实践RUP中的各项原则和最佳实践,软件开发团队能够更好地应对复杂的项目挑战。
《RUP过程与UML模型驱动应用实践》 在软件开发领域,尤其是在证券研发项目中,Rational Unified Process(RUP)与Unified Modeling Language(UML)是两种至关重要的工具和方法论。RUP是一种软件开发过程框架,强调...
《项目实例讨论-RUP&UML实践之路》是关于软件开发过程和建模技术的一份综合资源,主要围绕 Rational Unified Process(RUP)和Unified Modeling Language(UML)展开。RUP 是一种软件开发框架,它提供了一套结构化的...
**IBM公司的RUP模型详解** RUP(Rational Unified Process),即IBM的统一软件开发过程,是一种迭代和基于构件的软件开发方法论。RUP由IBM的Rational公司提出,它提供了一种结构化的方法来管理和构建高质量的软件...
RUP是一种迭代和增量的软件开发模型,强调了业务需求、系统架构和软件质量的重要性。它的核心思想是通过周期性的迭代开发,逐步完善和交付软件产品。RUP涵盖了需求分析、设计、实现、测试和部署等多个关键阶段,并为...
### RUP过程与UML模型驱动开发在证券研发项目中的应用实践 #### 一、引言 随着信息技术的发展,软件工程方法论对于提高软件产品质量、降低开发成本具有重要作用。Rational Unified Process(RUP)是一种面向对象且...
《RUP过程与UML模型驱动开发方法在证券研发项目中的应用实践》 软件开发是一项复杂的任务,尤其在证券行业,其对系统稳定性和安全性有着极高的要求。本文以“证券统一通道平台项目”为例,探讨了如何在实际项目中...
总之,RUP作为一种全面的软件开发框架,它融合了最佳实践,提供了灵活的风险管理和迭代开发方式,利用UML等工具进行有效的建模和沟通,从而提高软件项目的成功率。理解并掌握RUP的精髓,对于提升软件开发的质量和...