首先,在讨论软件界面设计之前,先普及一下软件需求分析的基础:

软件始于需求。
软件开发,能否获得成功,最重要的是需求分析的工作。因此,软件需求分析师的能力和水平,对软件项目至关重要。

多年以来,我接触过非常多软件从业人员,很多人说自己参加过多个项目,在项目组中做过需求分析,仔细聊起来却发现他们根本没有接受过软件需求分析的培训,对软件需求根本没有清晰的概念,甚至很多人认为把业务流程图画出来,把数据表做出来,就叫需求分析完成了。

我是做软件实践的,侧重基本概念。因此,本文中,我给大家讲解一下软件需求分析的基本概念。

软件需求,只有三个要素:Actor、系统边界、输入输出。如下图:


Actor:软件需求分析整个阶段,要构建的系统作为一个黑盒子。Actor与这个软件系统有直接交互关系。Actor 可以是人,也可以是其他软件系统。

系统边界:要构建的软件系统是个黑盒子,看不见这个黑盒子里面的任何子系统、模块,只能看到系统的边界。Actor 与系统的交互,都发生在系统边界上。

输入输出:Actor 与软件系统在边界上进行的所有交互。这些交互,无非是Actor给系统怎样的输入,然后系统给Actor怎样的输出,或者反之,系统给Actor怎样的输入,Actor给系统怎样的输出。用户在键盘的输入,鼠标的输入,对接系统向要构建系统发起的连接,发送的消息,接口的调用…,都是输入;用户看到的软件界面,系统的错误提示,系统回应的消息、接口调用的返回值、错误码等等,都是输出。

所有软件的需求分析,都是由这三个要素构成。首先要确定是系统边界和Actor,然后才是仔细分析Actor和系统边界之间的各种输出输出。

接下来就重点说一下软件界面设计了:

一个软件的品质等级,只要看看软件界面,就马上能看出高下了。

软件界面,首先是好用,其次才是好看。好多人经常把优先级弄错,先追求美观,用PS做很多图片,配上各种动态效果,但用起来非常难用,最后被客户骂个狗血喷头。

广州it外包服务公司提醒:软件以用为主,这句话非常深刻。软件是给人来用的,是用来解决某个领域内的问题的,完成相关的工作的。因此,能深刻理解客户的需求,提供给客户方便使用的界面,让客户能高效完成工作,这样的界面就是优秀的界面,能真正解决客户的问题。

不好的界面,术语和概念非常晦涩,客户难于理解,用起来非常复杂,客户要输入大量的数据,在大量的界面之间跳转,最后才完成一个工作项。这样的软件界面,是非常拙劣的。

软件界面的设计,是属于需求分析的范畴。让广州it外包服务公司来告诉您,在需求分析阶段,优秀的软件分析师,是怎样创造出好用的软件界面的呢?

首先,软件需求分析只要三个要素:Actor,系统边界,输入输出。对这方面不了解的,请见我写的文章“软件需求分析基础”。软件界面就是Actor与系统在边界上发生的输入输出。那么,需求分析师要做的事情,就是确定输入是什么,输出是什么,从而确定最合适的界面。

那么,需求分析师是怎么确定,输入是什么,输出是什么的呢?也很简单,需求分析师首先要弄明白,在客户上这套软件系统之前,客户是怎样完成对应的工作的。比如,在一个具体的业务场景中,客户是先接到电话,对方在电话中口述告诉一些信息,还是客户收到一个传真,或者是一个电子邮件,然后客户的下一个动作是拿标题内容查询档案库,再下一个动作是做…,再下一个动作是做…。就这样,把客户现有的各个微观活动环节一个一个找出来,分析清楚每个微观动作的输入是什么,输出是什么?

接下来的分析工作就容易了。把所有微观环节的输入项汇总到一起,重复的输入项合并为一个,如果一个环节的输出项是下一个环节的输入项,那么从汇总中去掉这个输入项,最后形成输入项集合。同样,把所有环节的输出项汇总到一起,重复的输出项合并为一个,如果一个环节的输出项是下一个环节的输入项,那么从汇总中去掉这个输出项,最后形成输出项集合。

输入项集合和输出项集合确定后,最理想的界面就是提供一个界面,界面上需要用户输入的就是输入项集合中的每个输入项,用户输入完毕后,点一个确定按钮,界面上就能显示输出项集合中的每个输出项的值。这样的界面,把客户的多个微观系列动作,一下子压缩到一个界面中,只要点个按钮,就一步完成所有动作,这样对用户来讲,是最高效的。

因此,对于微观业务场景中的输入、输出的精确分析,是软件需求分析师的核心能力,基于这样的分析,得出的界面,才是真正高品质的界面,真正对用户有价值的界面。

需求分析之软件界面设计相关推荐

  1. 一种全新的软件界面设计方法

    一种全新的软件界面设计方法 撰文:Aweay 你可转载,拷贝,但必须加入作者署名Aweay,如果用于商业目的,必须经过作者同意. 下载实例代码 关键字:COM MySpy IE SetUIHanlde ...

  2. 准备“软件界面设计”培训(更新-0816)

    第一期"面向对象软件开发"的培训已经基本结束,本周开始准备"软件界面设计"培训课程. 和上次培训一样,在完成培训PPT初稿后,我会上传到园子里,和大家分享我的心 ...

  3. 软件界面设计必备的色彩搭配技巧

    无论是软件界面设计还是平常的平面设计,亦或者宣传页.手机APP界面的设计,都离不开色彩的搭配,由此可见,色彩搭配工作在设计过程中的重要性.今天就以软件界面设计为例来分享一下在具体设计过程中的要把握好的 ...

  4. 如何做好软件界面设计?2个方法一次掌握!

    软件界面设计通常是指 UI 设计-- User Interface 的简称.UI 设计是指对软件的人机交互.操作逻辑.界面美观的整体设计. 好的软件界面设计要做到清晰.舒适.美观.要想做好软件界面设计 ...

  5. 软件工程(五)软件界面设计

    一看视频中有软件界面设计我就乐了.一看视频我就哭了--感觉有点老吧.虽然概念性的东西没变.但是提不起来兴趣呢.所以这次总结下我对界面设计的认识. 如果说软件是一个亭亭玉立的姑娘.那软件界面就是姑娘身上 ...

  6. 一种全新的软件界面设计方法(续)

    一种全新的软件界面设计方法(续) 点击下载文章所附代码 撰文:Aweay 你可转载,拷贝,但必须加入作者署名Aweay,如果用于商业目的,必须经过作者同意. 前段时间,笔者写了一篇关于使用Web页面设 ...

  7. 搜应用网是中国最丰富的手机资源下载站,为你提供精彩的手机图片.手机应用软件.手机游戏,定制服务手机用户的个性化需求,是广大手机用户.手机开发者.手机软件界面设计人员的广阔乐园.

    搜应用网是中国最丰富的手机资源下载站,为你提供精彩的手机图片.手机应用软件.手机游戏,定制服务手机用户的个性化需求,是广大手机用户.手机开发者.手机软件界面设计人员的广阔乐园. 搜应用网是中国最丰富的 ...

  8. 软件界面设计原则(转)

    一:遵循一致的准则,确立标准并遵循 无论是控件使用,提示信息措辞,还是颜色.窗口布局风格,遵循统一的标准,做到真正的一致. 这样得到的好处: 1:使用户使用起来能够建立起精确的心里模型,使用熟练了一个 ...

  9. 关于软件界面设计、控件颜色搭配、一些实用建议(偷懒技巧)总结——针对C# WinForm/WPF技术

    之前的文章讲了很多控件包的用法,我们做C#WinForm工程师的,基本都是做上位机的,很多都是公司没有专门的设计团队,界面做成什么样,基本全凭自己审美. 但我们只是个程序员,又不懂设计,不可能在界面设 ...

  10. 个人账本软件---界面设计

    一.竞争产品分析 1-1 DailyCoast dailycoast是一款轻量级的记账软件,界面具有简洁.美观的特点,整个见面不仅美观而且十分实用,用户体验极佳.在主界面可以直接下滑新建账单,没有繁琐 ...

最新文章

  1. Python OS 文件操作模块常用函数
  2. int b = 1;int c = b^0xff;求C
  3. MFC通过URL下载并保存文件代码 转载
  4. 【C/C++16】_public.h,_public.cpp,_cmpublic.h
  5. 使用 cf push 部署应用到 SAP BTP 后启动失败 start unsuccessful 该如何处理
  6. CSAcademy Or Problem
  7. KindEditor 4.1.10 (2013-11-23)首行空格不能显示在编辑器内
  8. 54-locate 简明笔记
  9. C语言手写模拟字符串String类
  10. 3.3 tensorflow2实现Mann - Whitney U统计量检验法 ——python实战
  11. 算法与数据结构1800题
  12. JS实现轮播图(一看就懂逻辑清晰)
  13. 百度云 下载提示 本地文件移动失败
  14. 【MySQL】MySQL的锁与事务隔离级别详解
  15. 英雄连的制作公司THQ历史
  16. excel日期转换为周数_VBA将日期转换为周数
  17. 数据人故事——【五花肉】7年数据产品的职业成长之路
  18. 无人机的微分平坦性详细推导+Mini snap
  19. Java学习笔记17:Java_Set集合_TreeSet集合_二叉树_HashSet集合
  20. 中值滤波算法--C 语言实现

热门文章

  1. python代码申请软件著作权_python自动化生成软件著作权的源代码
  2. 理解OAuth2授权框架
  3. 驾考维语版本-维语驾考手机电脑版-民语驾考网
  4. Spring-data ElasticSearch的使用
  5. 测试-分辨率兼容测试
  6. QQ在线客服代码 网页qq咨询html代码
  7. 用CMD批量ping ip地址
  8. GeoDa空间计量(一)——空间权重矩阵的生成
  9. 三菱plc软件测试程序com端口,三菱plc编程软件com端口不能保存
  10. SSH学习之四 OpenSSH安全