- 1、本文档共93页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
软件工程0把6细节设计
Details 细节
structured programming 结构化程序设计
Human-computer Interface 人机界面; CH6 Details design;可行性分析:解决“为什么要做”
软件需求:解决“做什么”
软件设计:解决“怎么做”
软件设计的任务
问题结构(软件需求) 软件结构
;这个项目怎么做?;?总体设计(概要设计、系统设计):
确定软件的结构以及各组成成分(子系统或模块)之间的相互关系。关注的是软件结构,主要面向用户。
(1)软件结构设计
(2)数据设计
?详细设计 (技术设计):
确定模块内部的算法和数据结构,产生描述各模块程序过程的详细文档。关注的是系统的具体实现方法,主要面向开发人员。
(3)人机界面设计
(4)过程设计;Contents; 1965年,E.W.Dijkstra在IFIP(国际信息处理联合会)会议上提出“可以从高级语言中取消GOTO语言”、“程序的质量与程序中所包含的GOTO语句的数量成反比”。但是当时并未引起很大反响。
1966年Bohm和Jacopini证明了,只用三种基本的控制结构就能实现任何单入口单出口的程序,这个结论奠定了结构程序设计的理论基础。这三种基本的控制结构是“顺序”、“选择”、“循环”。
1968年Dijkstra在ACM通讯上发表了短文“GOTO statement considered harmful”再次建议从一切高级语言中取消GOTO语句,只使用三种基本控制结构写程序。经过讨论人们认识到,不是简单地去掉GOTO语句的问题,而是要创立一种新的程序设计思想、方法和风格,以显著地提高软件生产率和降低软件维护代价。
1971年IBM公司在纽约时报信息库管理系统的设计中成功地使用了结构程序设计技术(以及主程序员组),随后在美国宇航局空间实验室飞行模拟系统的设计中,结构程序设计技术(也采用了主程序员组的形式)再次获得圆满成功。 ;(2)三种基本的控制结构 ; 虽然从理论上说只用上述三种基本控制结构就可以实现任何单入口单出口的程序,但是为了实际使用方便起见,常常还允许使用DO-UNTIL和DO-CASE两种控制结构,其流程图分别为:; 常用以上五种基本构造,但是在遇到多层嵌套循环时,如果每层只允许一个出口,势必影响退出时的效率。所以需要立即从循环(甚至嵌套的循环)中转移出来,如果允许使用BREAK,则不仅方便而且会使效率提高很多。
BREAK语句实质上是受限制的GOTO语句,用于转移到循环结构后面的语句。;Evaluation only.
Created with Aspose.Slides for .NET 3.5 Client Profile 5.2.0.0.
Copyright 2004-2011 Aspose Pty Ltd.;(3) Structured programming特征;(3)怎么判断一个程序是否为结构化的?;(4)自顶向下,逐步求精方法的优点;Contents;6.2 Human-computer Interface Design;(2)用户友好的概念
①用户友好性一般属软件的性能,它独立于所有具体功能,却影响着所有功能的重用性。
②用户友好性应体现在:易学习性、可扩展性、健壮性、可操作性。
③用户友好性的根本目的是为了软件可重用性、可维护性。
;(4)用户技能方面的使用需求;1、系统响应时间(不是越短越好,与任务有关)2、用户帮助设施(什么时候帮助、怎样请求帮助、怎样 组织帮助信息3、出错信息处理(恢复建议、必要的声音)4、命令交互(必须的,热键);6.2.2 HID过程;1、界面的设计原则;(1)帮助方式:
操作指南文档 (植入系统、未植入系统)
基于帮助文件的要求性帮助 (命令级帮助)
说明性帮助
嵌入系统的要求性帮助
嵌入培训功能的智能帮助系统
(2)要解决的问题
什么时候提供帮助?(任何时候、特定环境)
哪些功能提供帮助? (全部、部分)
怎样请求帮助?(特殊功能建F1,HELP命令,HILP菜单)
怎样显示帮助?(图形、声音、文字)
怎样返回到正常交互状态?(功能键,按钮)
怎样组织帮助?(平面,层次,超文本结构)
提供多少帮助?(翻译、说明、实例);
文档评论(0)