软件设计 基础篇(二) 交互设计

2023-10-27

软件设计 基础篇 系列文章目录



1. 软件设计

软件设计是从软件需求规格说明书出发,根据需求分析阶段确定的功能设计软件系统的整体结构、划分功能模块、确定每个模块的实现算法以及编写具体的代码,形成软件的具体设计方案。

软件设计是把许多事物和问题抽象起来,并且抽象它们不同的层次和角度。将问题或事物分解并模块化使得解决问题变得容易,分解的越细模块数量也就越多,它的副作用就是使得设计者考虑更多的模块之间耦合度的情况。


1.1 设计简介

软件设计是从软件需求规格说明出发,形成软件的具体设计方案的过程,也就是说在需求分析阶段明确软件是“做什么”的基础上,解决软件“怎么做”的问题。结构化设计方将把软件设计分为概要设计和详细设计两个阶段。概要设计的主要任务是,通过分析需求规格说明对软件进行功能分解,确定软件的总体结构;详细设计阶段确定每个模块功能所需要的算法和数据结构,设计出每个模块的逻辑结构。软件设计阶段结束时的工作成果是软件设计说明书,它描述软件系统的组成模块结、模块间的调用关系,以及每个模块的输入、输出和详细的过程描述。


1.2 设计基础

软件设计的基本目标是用比较抽象、概括的方式确定目标系统如何完成预定的任务,软件设计是确定系统的物理模型。软件设计是开发阶段最重要的步骤,是将需求准确地转化为完整的软件产品或系统的唯一途径。从技术观点上看,软件设计包括软件结构设计、数据设计、接口设计、过程设计;

  1. 结构设计定义软件系统各主要部件之间的关系;
  2. 数据设计将分析时创建的模型转化为数据结构的定义;
  3. 接口设计描述软件内部、软件和协作系统之间及软件与人之间如何通信;
  4. 过程设计则把系统结构部件交换为软件的过程性描述。

2. 交互设计

交互设计(英文Interaction Design, 缩写IXD),是定义、设计人造系统的行为的设计领域,它定义了两个或多个互动的个体之间交流的内容和结构,使之互相配合,共同达成某种目的。交互设计努力去创造和建立的是人与产品及服务之间有意义的关系,以“在充满社会复杂性的物质世界中嵌入信息技术”为中心。交互系统设计的目标可以从“可用性”和”用户体验“两个层面上进行分析,关注以人为本的用户需求。


2.1 交互概述

交互设计的思维方法建构于工业设计以用户为中心的方法,同时加以发展,更多地面向行为和过程,把产品看作一个事件,强调过程性思考的能力,流程图与状态转换图和故事板等成为重要设计表现手段,更重要的是掌握软件和硬件的原型实现的技巧方法和评估技术。

交互设计在于定义人造物的行为方式(the “interaction”,即人工制品在特定场景下的反应方式)相关的界面。交互设计作为一门关注交互体验的新学科在二十世纪八十年代产生了,它由IDEO的一位创始人比尔·摩格理吉(Bill Moggridge)在1984年一次设计会议上提出,他一开始给它命名为“软面(Soft Face)”,由于这个名字容易让人想起和当时流行的玩具“椰菜娃娃(Cabbage Patch doll)”,他后来把它更名为“Interaction Design”,即交互设计。


2.2 交互起源

交互设计起源于网站设计和图形设计,但现在已经成长为一个独立的领域。现在的交互设计师远非仅仅负责文字和图片,而是负责创建在屏幕上的所有元素,所有用户可能会触摸,点按或者输入的东西:简而言之,产品体验中的所有交互。

交互设计在于定义人造物的行为方式(the “interaction”,即人工制品在特定场景下的反应方式)相关的界面。交互设计作为一门关注交互体验的新学科在二十世纪八十年代产生了,它由IDEO的一位创始人比尔·摩格理吉(Bill Moggridge)在1984年一次设计会议上提出,他一开始给它命名为“软面(Soft Face)”,由于这个名字容易让人想起和当时流行的玩具“椰菜娃娃(Cabbage Patch doll)”,他后来把它更名为“Interaction Design”,即交互设计。


总结

提示:这里对文章进行总结:
例如:以上就是今天要讲的内容,本文仅仅简单介绍了pandas的使用,而pandas提供了大量能使我们快速便捷地处理数据的函数和方法。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

软件设计 基础篇(二) 交互设计 的相关文章

  • 计算机组成原理(1)-软件设计(二十二)

    程序设计语言 软件设计 二十一 https blog csdn net ke1ying article details 129344983 计算机组成原理在软件设计考试分值占比较高 主要会考 1 数据的表示 数据进制转化 日常生活中使用的都
  • Adobe MAX 2020:最新版Photoshop提供AI智能神经滤镜及天空替换等功能

    数据猿年度重磅活动预告 2020年度金猿策划活动 金猿榜单发布 金猿奖杯颁发 即将推出 尽情咨询期待 大数据产业创新服务媒体 聚焦数据 改变商业 数据报道 受新冠疫情影响 今年的Adobe MAX 2020 于北京时间10月21日改为了线上
  • 真题详解(关系模型)-软件设计(六十六)

    真题详解 ICMP 软件设计 六十五 https blog csdn net ke1ying article details 130475620 2017年下半年 内存按字节编址 若存储容量为32K 8bit的存储芯片构成地址从A0000H
  • 阿里云中搭建FTP服务器

    在阿里云中搭建ftp服务器一定要记得在云平台配置防火墙的端口
  • 二叉树、队列、栈、广义表(二)数据结构与算法(十八)

    数据结构与算法 一 软件设计 十七 https blog csdn net ke1ying article details 129220378 线性表 队列与栈 队列 先进先出 栈 先进后出 循环队列 队投和队尾连接起来 队空的条件 Hea
  • 深入“自自顶向下,逐步求精”——面向过程程序设计方法

    文章转自 http blog csdn net sxhelijian article details 7303605 程序设计初学者常常受困于不会想问题 不知道让计算机解决这个问题该如何做 其实 程序员的一个基本功是 能够将复杂的问题分解开
  • 23种设计模式之模板模式

    文章目录 概述 模版模式的优缺点 优点 缺点 模版模式的使用场景 模板模式的结构和实现 模式结构 模式实现 总结 概述 模板模式指 一个抽象类中 有一个主方法 再定义1 n个方法 可以是抽象的 也可以是实际的方法 定义一个类 继承该抽象类
  • 《小家:越住越大》

    第一章 二八定律 房子单价很贵 但却像人一样 慢慢被不必要的杂物堆积 变得杂乱 空间不足 人需要减肥 房子也需要减负 常用的东西 20 放在随手可及的地方 不常用的东西 80 合理收纳 这就是隐藏与显示的二八定律 收纳百分之八十的生活杂物
  • Google Cloud API设计指南

    目录 一 基于资源的设计 什么是 REST API 设计流程 资源 方法 示例 Gmail API Cloud Pub Sub API Cloud Spanner API 二 资源名称 完整资源名称 相对资源名称 资源 ID 集合 ID 资
  • 软件系统概要设计的三大要素

    概要设计是一个设计师根据用户交互过程和用户需求来形成交互框架和视觉框架的过程 其结果往往以反映交互控件布置 界面元素分组以及界面整体板式的页面框架图的形式来呈现 这是一个在用户研究和设计之间架起桥梁 使用户研究和设计无缝结合 将对用户目标与
  • 数据结构与算法(二十)快速排序、堆排序(四)

    数据结构与算法 三 软件设计 十九 https blog csdn net ke1ying article details 129252205 排序 分为 稳定排序 和 不稳定排序 内排序 和 外排序 内排序指在内存里 外排序指在外部存储空
  • 设计模式(十五)-面向对象概念

    软件设计 十五 UML建模 下 https blog csdn net ke1ying article details 129152487 一 设计原则 1 单一职责 设计目的单一的类 2 开放 封闭原则 对扩展开放 对修改关闭 3 里氏替
  • 话题:程序员酒后吐真言,竟然这样说

    据说 美国最大的论坛 Reddit 最近有一个热帖 一个程序员说自己喝醉了 做了10年软件工程师 心里有好多话想说 我可能会后悔今天说了这些话 他洋洋洒洒写了一大堆 获得9700多个赞 其中有一条竟然是说 作为一名工程师 最被低估的技能是记
  • 系统开发(上)-软件设计(三十二)

    信息系统安全 对称加密 软件设计 三十一 https blog csdn net ke1ying article details 129678350 瀑布模型SDLC 是结构化的开发 步奏 软件计划 gt 需求分析 gt 软件设计 gt 程
  • PWM移相

    PWM移相可以从两方面考虑 1 如果能够移动时基 那么移动时基是一种最简便的方法 2 如果没办法移动时基 那么改变比较值也是一种可行的办法 C2000系列DSP的ePWM模块对PWM移相有相关的应用说明 如下图所示 来源于2803x芯片手册
  • 73家!华为鸿蒙OS合作伙伴汇总

    6月2日 华为发布了最新版的鸿蒙操作系统 HarmonyOS 2 0 以及一系列搭载鸿蒙的硬件产品 比如手机 手表 平板 耳机 显示器等等 如今的智能终端越来越多 厂商不可能为每个设备单独准备一个系统 因为这不仅让开发者工作量倍增 消费者用
  • 真题详解(数字签名算法)-软件设计(七十八)

    真题详解 有限自动机 软件设计 七十七 https blog csdn net ke1ying article details 130748759 可用于数字签名算法的是 答案 非对称RSA 移植性 易安装 易替换 适应性 UML状态图转换
  • (PPT+官方解读):中国移动5G终端产品2021年要这么干!

    以下内容来自官方解读 1 2020 年终端产品发展回顾 2020 年新冠疫情全球蔓延 生产和生活受到冲击也带来很多改变 应该说这是不平凡的一年 也是在这一年的不断努力之下 中国移动 5G 终端交出了一份还算不错的答卷 中国移动网内 5G 手
  • 互联网大厂2021中秋礼盒pk,看完我又酸了……

    作者丨魏宇卓 来源丨运营研究社 ID U quan 马上又要到中秋节啦 每年中秋节 我最喜欢的就是吃着在便利店买的寒酸月饼 围观互联网大厂们在中秋礼盒上互相 battle 今年 大厂的月饼礼盒哪家强呢 我特地挑选了 10 家互联网大厂的中秋
  • 真题详解(传引用)-软件设计(七十五)

    真题详解 补码转换 软件设计 七十四 https blog csdn net ke1ying article details 130674214 分治算法技术设计 答案 1 问题划分 2 递归求解 3 合并解 虚拟存储体系 两级构成 解析

随机推荐

  • kafka入门安装及消息发送接受初体验(附源码)

    这里是weihubeats 觉得文章不错可以关注公众号小奏技术 文章首发 拒绝营销号 拒绝标题党 官方文档 https kafka apache org quickstart 版本 3 5 0 安装 这里我们提供两种安装方式 一种是编译好的
  • Async异步处理【Springboot】

    简单实现异步处理 springboot异步处理 先建立一个controller目录 再建一个AsynController java 建立一个service目录 再建立一个AsynController java 启动项目 效果 1 在三秒以后
  • 电子科技大学软件工程期末复习笔记(四):软件设计

    目录 前言 重点一览 软件工程设计 软件设计定义 软件设计包含的两类活动 软件设计包涵 软件的质量属性 各种设计技术 程序结构 深度 宽度 扇入 扇出 完整的设计规格 软件体系架构 用户界面设计的3条原则 用户界面设计的3种分析 结构化设计
  • 5. zksnark 几种实现算法性能对比

    像 zk SNARK 这样的零知识证明有很多应用 Zcash利用零知识证明 来保护隐私 Coda和Mir利用零知识证明将整个区块链压缩到只有几K字节 0x和Matter则利用零知识证明将许多交易封装为以太坊 上的单一证明 1 可信设置 传统
  • Jumpserver 堡垒机

    一 Jumpserver简介 跳板机概述 跳板机就是一台服务器 开发或运维人员在维护过程中首先要统一登录到这台服务器 然后再登录到目标设备进行维护和操作 跳板机缺点 没有实现对运维人员操作行为的控制和审计 使用跳板机的过程中还是会出现误操作
  • unity的常见错误处理

    黄色提示 文件丢失 第一种情况 显示文件丢失 就去把文件拖到丢失的目录下 第二种情况 代码错误 无法识别 一般是调用的参数打错 红色提示 无法识别 当unity出现下列代码的情况时 we can t assign a new guid be
  • rabbitmq-给消息设置过期时间(九)

    TTL 全称 Time To Live 存活时间 过期时间 当消息到达存活时间后 还没有被消费 会被自动清除 RabbitMQ可以对消息设置过期时间 也可以对整个队列 Queue 设置过期时间 方式一 通过给队列配置属性设置消息的过期时间
  • js(art-­template、cookie、session、分页、注册、form、audio、video、移动端event、touch.js)

    art template 1 介绍 art template是一个简单且超快速的模板引擎 可通过范围内预先声明的技术优化模板渲染速度 从而实现接近JavaScript极限的运行时性能 同时它支持nodeJS和浏览器 2 基本使用 引入art
  • k8s之PV、PVC和StorageClass

    PV 什么是PV PV 描述的 则是一个具体的 Volume 的属性 比如 Volume 的类型 挂载目录 远程存储服务器地址等 创建PV 使用yaml来定义PV apiVersion v1 kind PersistentVolume me
  • Java多线程简析——Synchronized(同步锁)、Lock以及线程池

    Java多线程 Java中 可运行的程序都是有一个或多个进程组成 进程则是由多个线程组成的 最简单的一个进程 会包括mian线程以及GC线程 线程的状态 线程状态由以下一张网上图片来说明 在图中 红框标识的部分方法 可以认为已过时 不再使用
  • 关于npm cnpm yarm pnmp

    npm npm是什么 npm是node package manager的简称 node js 的包管理器 用于node插件管理 包括安装 卸载 管理依赖等 pm 是随同 node js 一起安装的包管理工具 能解决 node js 代码部署
  • mysql建表注意事项。

    1 表达是否概念的字段 必须使用is xxx的方式 数据类型是unsigned tinyint 1表示是 0表示否 pojo类中任何布尔类型的变量 都不要加is前缀 2 表名 字段名必须使用小写字母或者数字 禁止出现数字开头 禁止只出现两个
  • ShardingSphere系列二(ShardingSphere实现分库分表)

    文章目录 1 高性能数据库集群架构模式 1 1 读写分离 1 2 数据分片 分库分表 2 实现方式 2 1 程序代码封装 2 2 中间件封装 2 3 常用解决方案 3 ShardingSphere 4 ShardingJDBC 4 1 核心
  • 项目简单日志配置(控制台和输出文件)

    首先引入相关的log4j的jar包 然后配置log4j properties文件 简单配置如下 日志的输出级别以及输出目的地 这里是配置输出到控制台与日志文件 log4j常用的优先级FATAL gt ERROR gt WARN gt INF
  • MATLAB----模糊聚类

    data 1739 94 1675 15 2395 96 3 373 3 3087 05 2429 47 4 1756 77 1652 1514 98 3 864 45 1647 31 2665 9 1 222 85 3059 54 200
  • ReactHooks常用钩子总结

    ReactHooks常用钩子 重学react 这里对常用的ReactHooks做一下简单的总结 1 useState useState 会返回一个数组 一个 state 一个更新 state 的函数 在初始化渲染期间 返回的状态 state
  • 左值与右值

    目录 一 类型 二 地址 三 举例 一 类型 1 均与类型无关 int型 float型等等 均有 二 地址 1 右值不可取地址 引用的右值 程序没有分配内存区域 无地址 2 左值可以取地址 地址为所引用的实例 变量 对象的地址 int ma
  • Qt利用setStyleSheet设置样式

    Qt中设置按钮或QWidget的外观是 可以使用QT Style Sheets来进行设置 非常方便 可以用setStyleSheet font bold font size 20px color rgb 241 70 62 backgrou
  • [总结]怎么给VM(虚拟机)添加新磁盘

    1 关闭系统 点击VM gt Settings弹出的Add Hardware Wizard对话框 点击Add gt Hard Disk gt Next gt Create a new virtual disk gt SCSI Recomme
  • 软件设计 基础篇(二) 交互设计

    软件设计 基础篇 系列文章目录 软件设计 基础篇 二 交互设计 文章目录 软件设计 基础篇 系列文章目录 1 软件设计 1 1 设计简介 1 2 设计基础 2 交互设计 2 1 交互概述 2 2 交互起源 总结 1 软件设计 软件设计是从软