面向对象设计-第四节:设计人机交互子系统和设计任务管理子系统

Posted 快乐江湖

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了面向对象设计-第四节:设计人机交互子系统和设计任务管理子系统相关的知识,希望对你有一定的参考价值。

文章目录

一:设计人机交互子系统

(1)概念

A:主要内容

在面向对象设计过程中,对系统的人机交互子系统进行详细设计,以确定人机交互的细节,其中包括指定窗口报表的形式设计命令层次等项内容。

B:重要性

  • 人机界面设计得好,则会使系统对用户产生吸引力,用户在使用系统的过程中会感到兴奋,能够激发用户的创造力,提高工作效率;
  • 人机界面设计得不好,用户在使用过程中就会感到不方便、不习惯,甚至会产生厌烦和恼怒的情绪

(2)设计策略

A:分类用户

应该把将来可能与系统交互的用户按技能水平,或按职务,或按所属集团进行分类

B:描述用户

了解将来使用系统的每类用户的情况,把用户类型、使用目的、特征、关键的成功因素、技能水平、完成本职工作的脚本的信息记录下来

C:设计命令层次

①:研究现有的人机交互含义和准则

设计图形用户界面时,应该遵守广大用户习惯的约定,这样才会被用户接受和喜爱

②:确定初始的命令层次

命令层次实质上是用抽象机制组织起来的、可供选用的服务的表示形式,设计命令层次时,通常先从对服务的过程抽象着手,然后进一步修改它们,以适合具体应用环境的需要

③:精化命令的层次

为进一步修改完善初始的命令层次,应该考虑次序、整体部分关系、宽度和深度等因素

D:设计人机交互类

人机交互类与所使用的操作系统及编程语言密切相关

二:设计任务管理子系统

(1)必要性

  • 许多对象之间往往存在相互依赖关系
  • 在实际使用的硬件中,可能仅由一个处理器支持多个对象

(2)设计步骤

A:分析并发性

①:并发性

如果两个对象彼此间不存在交互,或它们同时接受事件,则它们在本质,上是并发的

②:方法

  • 通过面向对象分析建立起来的动态模型,是分析并发性的主要依据
  • 通过检查各个对象的状态图及它们之间交换的事件,能够把若干个非并发的对象归并到一条控制线中

③:控制线

控制线是一条遍及状态图集合的路径,在这条路径上每次只有一个对象是活动的。在计算机系统中用进程实现控制线。把多个任务的并发执行称为多任务

B:设计任务管理子系统

①:确定事件驱动型任务

某些任务是由事件驱动的,这类任务可能主要完成通信工作,具体任务有

  • 任务处于睡眠状态,等待来自数据线或其他数据源的中断
  • 一旦接收到中断就唤醒该任务,接收数据并把数据放入内存缓冲区或其他目的地,通知需要知道这件事的对象,然后该任务又回到睡眠状态

②:确定时钟驱动型任务

某些任务每隔一定时间间隔就被触发以执行某些处理,具体任务有

  • 任务设置了唤醒时间后进入睡眠状态,等待来自系统的中断
  • 接收到这种中断,任务就被唤醒并做它的工作,通知有关的对象,然后该任务又回到睡眠状态

③:确定优先任务

  • 高优先级:有些服务是优先级的,为了在严格限定的时间内完成,把这类服务分离成独立的任务
  • 低优先级:与高优先级相反,有些服务是低优先级的,属于低优先级处理。设计时用额外的任务把其分离出来

④:确定关键任务

关键任务是有关系统成功或失败的关键处理,这类处理通常都有严格的可靠性要求。处理方法为:在设计过程中用额外的任务把这样的关键处理分离出来,以满足高可靠性处理的要求

⑤:确定协调任务

当系统中存在三个以上任务时,就应该增加一个任务,用它作为协调任务。使用状态转换矩阵可以比较方便地描述该任务的行为。这类任务仅做协调工作,不要让它再承担其他服务工作

⑥:尽量减少任务数

⑦:确定系统资源需求

  • 通过计算系统载荷,来估算所需要的固件的处理能力
  • 综合权衡一致性、成本、性能以及未来的可扩充性和可修改性,决定资源需求
  • 综合考虑各种因素,以决定哪些子系统用硬件实现,哪些子系统用软件实现

以上是关于面向对象设计-第四节:设计人机交互子系统和设计任务管理子系统的主要内容,如果未能解决你的问题,请参考以下文章

(计算机组成原理)第五章中央处理器-第四节4:微程序控制单元设计

基于国产 ARM + FPGA+Codesys运动控制平台的智能人机交互系统设计

基于国产 ARM + FPGA+Codesys运动控制平台的智能人机交互系统设计

数据库设计-第四节:逻辑结构设计

CSDN学霸课表——iOS人机交互设计规范精讲

软件工程基础图式(第四章 系统设计)