面向对象的分析模型主要由顶层架构图、用例与用例图和 (问题1) 构成:设计模型则包含以 (问题2) 表示的软件体系结构图、以交互图表示的用例实现图、完整精确的类图、描述复杂对象的 (问题3) 和用以描述流程化处理过程的活动图等。
面向对象分析与设计的UML建模核心知识点如下:面向对象分析模型除包含顶层架构图、用例与用例图外,核心构成是领域概念模型,它负责从业务问题域中抽象提炼核心对象及相互关系,是面向对象分析的核心模块,需注意区别于结构化分析方法中的数据流模型、功能分解图这类非面向对象的建模元素。在设计模型的架构层建模中,包图是首选的UML图,用于组织和分层系统中的类及各类模型元素,清晰展示系统整体结构与组织,要区分开组件图(侧重物理组件间关系,多用于后期设计阶段)、模型视图控制器这类架构模式以及2层、3层这类架构风格,它们都不属于架构层建模的UML图范畴。当对象存在多状态且会在事件触发下发生状态迁移时,应采用状态图来描述,它能精准呈现对象生命周期内的状态变化过程,而序列图、协作图主要用于表达对象间的消息交互逻辑,流程图并非UML标准图形,无法准确刻画对象状态迁移细节。
本题考察的是面向对象分析与设计中模型构成要素的理解,属于建模基础知识点。
问题 1:
分析模型的核心在于从问题域抽象出关键的概念和关系,这正是领域概念模型的作用。
A选项数据流模型:属于结构化分析方法,与面向对象方法不符。
B选项领域概念模型:用于捕捉业务领域的核心对象和它们之间的关系,是OOA的核心,该选项正确。
C选项功能分解图:是传统结构化方法中的表示形式,不属于面向对象分析模型。
D选项功能需求模型:表达不严谨,在面向对象分析中没有该术语。
选择选项 B。
问题 2:
设计模型要体现系统结构,包图是用来组织和分层类及其他模型元素的图形方式。
A选项模型视图控制器:是一种架构模式,不是UML图。
B选项组件图:用于表示物理组件之间的关系,适用于后期设计,不是架构层首选。
C选项包图:用于表示系统结构和组织,是体系结构建模的常用图,该选项正确。
D选项2层、3层或N层:描述的是架构风格,不是图的种类。
选择选项 C。
问题 3:
当对象具有多种状态并在事件触发下发生状态迁移时,状态图是最合适的表示方式。
A选项序列图、B选项协作图:用于表示对象间的消息交互。
C选项流程图:不是UML标准图形,不能准确表达对象状态。
D选项状态图:用于描述对象生命周期中的状态变化,是表达复杂对象行为的最佳工具,该选项正确。
选择选项 D。
