混合交互系统开发:从设计到实现的全流程解析
立即解锁
发布时间: 2025-08-22 00:35:53 阅读量: 2 订阅数: 8 


混合现实系统的设计与应用
### 混合交互系统开发:从设计到实现的全流程解析
#### 1. K - MAD 到 ASUR 模型转换的优势与局限
将 K - MAD 模型转换为 ASUR 模型的规则和子规则繁多,这使得探索所有解决方案变得困难。不过,它能确保系统地探索各种可能性,或者至少有助于追踪那些尚未探索的替代方案,例如使用群体的物理表示。目前,这种方法仅限于特定的任务模型(K - MAD)和混合交互模型(ASUR),但我们认为将类似方法应用于不同的源模型和目标模型会很有意义。
应用衔接规则会生成不同的 ASUR 部分模型,这些模型包含任务模型中表达的每个元素,并且与用户交互相关。这些 ASUR 模型符合任务模型中表达的概念,通过用特定混合交互模型的概念(参与实体,如用户、物理和/或数字实体以及适配器,以及连接它们的交互通道)来表达设计元素,为混合交互设计提供了起点。生成的 ASUR 模型并非完全确定,设计师有机会细化许多设计方面。最后,任务和交互这两个步骤之间的联系通过应用的规则清晰记录,后续可以重新审视推理过程,因为识别混合交互设计不同元素的原因与上一阶段的决策紧密相关。
#### 2. 混合交互设计与 MIS 实现的衔接
ASUR 模型通过定义参与交互的每个实体,捕捉了混合交互情况的几个特征。接下来的目标是将这些设计结果与软件实现相连接。为了在同一设计过程中结合以用户为中心的设计要求和软件工程要求,使用了软件架构模型。定义这个模型必须建立 MIS 软件架构的一些主要元素,并且为了符合我们的方法,这些元素必须从 ASUR 模型推导而来。为了有效,这个机制不仅要考虑与交互式软件架构设计相关的一些属性,还要考虑 MIS 开发环境中固有的一些属性。
##### 2.1 MIS 架构要求
为了创建用于实现系统的软件架构,可以使用通用的软件工程方法,例如 UML 符号能够描述这些信息。但这种通用语言过于通用,因此在特定领域开发中经常使用配置文件。为了独立于 UML 符号描述软件架构,我们更倾向于采用模型驱动工程(MDE)方法,它为描述特定领域(MIS 开发)提供了合适的抽象和符号。
人机交互(HCI)领域为定义重要的架构模型确立了几个概念:
- 功能核心和交互服务的分离;
- 为参与交互的每个软件组件指定角色;
- 定义这些组件之间的通信。
抽象模型 ARCH 就是一个涵盖这些方面的例子,尤其在角色指定方面有特别关注,这还导致了交互层的物理和逻辑分离这一额外考虑。
这四个基本方面是我们设计方法的核心,但为了增强 MIS 的架构建模,我们还考虑了另外三个被描述为内部属性的补充属性,这些属性提高了架构在这种情况下的适用性。
##### 2.2 可修改性、可移植性和开发效率
MIS 并不广为人知,由于交互可能性的数量激增,仍存在许多挑战。为了探索这些可能性,在混合交互系统开发过程中必须解决三个主要属性:
- **可移植性**:由于交互式软件的设备和软件库是异构的,下一节介绍的元模型通过采用模型驱动架构所倡导的与平台无关的观点来满足可移植性需求。在 10.3.3 节中介绍了在运行时平台上实例化设计系统的方法。
- **开发效率**:为了实现快速原型设计,我们选择 MDE 方法来描述开发每个步骤的规范语言,并定义它们之间的衔接规则,如 10.3.2 和 10.3.3 节所述。
- **可修改性**:为了探索不同的设计解决方案,通过模块化和可重用性两个方面来解决这个属性。基于组件的架构增强了模块化,角色的指定提高了可重用性,特别是考虑到输入和输出交互的区别,这在 MVC 中有所体现,并且在混合交互情况下非常相关。
考虑到这些不同的建模方面,对于交互式软件的软件架构,特别是支持 MIS 开发的架构,下一节将介绍我们过程中用于描述 MIS 架构的 ASUR - IL 元模型。
##### 2.3 ASUR - IL 元模型
该模型可以看作是抽象模型 ARCH 和 MVC 的组合。PAC - Amodeus 模型也扩展了 ARCH,但专注于对话控制(由于其目的是多模态系统),并且不处理输入/输出区别。ASUR 实现层(ASUR - IL)描述了参与交互的软件组件集合以及它们之间的不同通信。每个组件都有几个端口,由支持的数据类型来表征,以实现它们之间的数据流。如图 10.5 所示,ASUR - IL 模型是一个集合,包含几个子集合。
ASUR - IL 中存在两种类型的子集合:
- **适配器**:将设备和 API 组件组合在一起,支持描述交互的不同层(图 10.5 左右两侧的方块)。
- **实体**:将模型、视图和控制器组件组合在一起,支持描述领域对象(图 10.5 中间的矩形)。
为了与其他开发步骤的模型进行衔接,使用专门用于描述特定领域语言的工具来描述 ASUR - IL 元模型。
##### 2.4 模型驱动工程工具
对于 ASUR,我们选择使用 Eclipse 基金会的建模项目工具来表达元模型。ASUR 和 ASUR - IL 元模型符合 Ecore 元元模型,它们的操作由 Eclipse 建模框架支持。这些模型可以通过使用图形建模框架开发的编辑器进行编辑。支持两个模型衔接的主要工具是通过使用转换引擎定义的,该引擎用 Atlas 转换语言表达,它结合了声明性和命令性规则,这使得表达连接交互设计和架构建模所需的转换成为可能。
#### 3. ASUR 到 ASUR - IL 的转换原则
如前所述,需要定义 ASUR 模型和 ASUR - IL 模型之间的衔接原则,以连接用户需求和软件设计。为了表达这种转换的目的,以下小节描述了每个相关模型的不同概念以及它们在转换过程中是如何关联的。
##### 3.1 混合交互到软件架构模型的转换
与代码生成不同,这种转换侧重于翻译那些不能直接一对一匹配的概念。它们是开发过程不同抽象层次的一部分。源模型不包含生成完整目标模型所需的所有信息,一些目标元素取决于几个源元素的组合。在这种情况下,这一步的目的是初始化软件架构规范。它根据上一设计步骤中表达的设计考虑,生成 ASUR - IL 模型的基本元素,具体如下:
- 参与 MIS 交互的数字实体及其类型;
- 每个实体之间交互通道的属性。
这种转换的
0
0
复制全文
相关推荐










