当前位置: 首页 > article >正文

用户界面的UML建模05

4 抽象表示层建模(Abstract Presentation Modeling)

在进行应用程序建模时,很自然地会需要对UI 表示层进行建模。甚至是对于非常简单的场景(scenario)而言,UI 表示层部分的建模都是必不可少的。在这个阶段我们并不需要一个详细的UI 表示层模型,只要能够了解到UI 是由哪种组件(components)组成,共有多少组件,以及它们是如何分组的即可。我们还需要知道这些UI 元素具有哪些操作。因此,我们需要一个抽象表示层模型(abstract presentation model)。

可以通过对一个用户成功登录图书馆系统的建模,来举例说明如何使用一个抽象表示层模型。图4 所示的便是用例ConnectToSystem 在该场景下的序列图(sequence diagram)。根据图1 所示的用例图,ConnectToSystem 是与《actor》LibrarySystemUser 相关联的。因此,本次交互由LibrarySystemUser发起,然后发送一个消息(message)至Library System 实例,该实例代表的是整个图书馆系统。

图4:用例ConnetToSystem 的序列图 

从实际的角度来说,比如在Windows 环境下鼠标双击图书管理系统的图标,将会产生request connection 消息。

系统会立刻创建一个ConnectionUI 类的《boundary》对象,该对象执行一个名为showForm()的操作。可以将对象的创建建模为一个对象向新建对象发送《create》消息。ConnectionUI 对象一经创建,便会向用户显示为一个建立连接的用户界面,并请求输入登录名称和密码。其类似的用户界面可参加图5 所示。图5 并非一个UML 图,这是因为在UML 中并没有规定任何关于UI 表示层设计的标记。事实上,我们并未要求UML 应该具有关于UI 模型的标记,从而提供UI 布局(layout)和组件选择方面的支持。但是,我们通过讨论认为UML 需要一种标记来更好地描述抽象用户界面的结构,而非类图和对象图。事实上,这样的标记可用在UI 设计的初期,甚至可通过使用活动图来支持任务的设计。

图5:ConnectionUI 的显示

关于ConnectToSystem 的序列图还需要进行一些辅助的定义,这将会在后续章节中予以说明。


http://www.kler.cn/a/458683.html

相关文章:

  • 静默模式下安装Weblogic 14.1.1.0.0
  • 【0379】Postgres内核 walreceiver (libpqwalreceiver API)分析
  • 欧拉-伯努利梁自由波动的频散关系
  • HuatuoGPT-o1:基于40K可验证医学问题的两阶段复杂推理增强框架,通过验证器引导和强化学习提升医学模型的推理能力
  • 典型常见的基于知识蒸馏的目标检测方法总结三
  • default、delete 和 explicit
  • element-plus在Vue3中开发相关知识
  • AI文献阅读ChatDOC 、ChatPDF 哪个好?
  • 如何在Linux上配置SSH密钥以实现免密登录
  • PostgreSQL 初始化配置设置
  • Unity功能模块一对话系统(4)实现个性文本标签
  • 2024-12-29-sklearn学习(25)无监督学习-神经网络模型(无监督) 烟笼寒水月笼沙,夜泊秦淮近酒家。
  • Leetcode 3405. Count the Number of Arrays with K Matching Adjacent Elements
  • 【LangChain】Chapter1 - Models, Prompts and Output Parsers
  • 【开源免费】基于SpringBoot+Vue.JS网上摄影工作室系统(JAVA毕业设计)
  • PostgreSQL中FIRST_VALUE、LAST_VALUE、LAG 和 LEAD是窗口函数,允许返回在数据集的特定窗口(或分区)内访问行的相对位置
  • 软件测试之单元测试
  • 技术周总结 12.23~12.29 周日(C#异步线程及调试)
  • 网络畅通无阻:计算机网络知识点复习指南
  • Empire Lupin One靶机
  • AIGC多模态生成模型的演进:图像与视频生成算法的协同发展(附代码与详细教程)
  • .net core 的软件开发方法论
  • 【Go】:Sentinel 动态数据源配置指南
  • C++ 设计模式
  • RabbitMQ中的异步Confirm模式:提升消息可靠性的利器
  • docker oracle一些报错处理--失败记录