软件工程导论学习-详细设计

详细设计的根本目标是确定应该怎样具体地实现所要求的系统,从而在编码阶段可以把这个描述直接翻译成用某种程序设计语言书写的程序。

程序的"读者"有两个,那就是计算机和人,因此,衡量程序的质量不仅要看它的逻辑是否正确,性能是否满足要求,更主要的是要看它是否容易阅读和理解。结构程序设计使实现上述目标的关键技术,因此是详细设计的逻辑基础。

结构程序设计使尽可能少用GO TO语句的程序设计方法。最好仅在检测出错误时才使用GO TO语句,而且应该总是使用前向GO TO语句。


人机界面设计使接口设计的一个重要的组成部分,对于交互式系统来说,人机界面设计和数据设计、体系结构设计及过程设计一样重要。

在设计人机界面的过程中,几乎总会遇到下述4个问题:系统响应时间、用户帮助设施、出错信息处理和命令交互。

用户界面设计是一个迭代的过程:先创建设计模型,再用原型事项这个设计模型,并有用户试用和评估,然后根据用户意见进行修改。

也可以在创建原型之前就对用户界面的设计质量进行初步评估。如果能及早发现并改正潜在的问题,就可以减少评估周期的执行次数,从而缩短软件的开发时间。可以用下述评估标准对设计进行早期复查。

1.系统及其界面的规格说明书的长度和复杂程度,预示了用户学习使用该系统所需要的工作量。

2.命令或动作的数量、命令的平均参数个数或动作中单个操作的个数,预示了系统的交互时间和总体效率。

3.设计模型中包含的动作、命令和系统状态的数量,预示了用户学习使用该系统时需要记忆的内容的多少。

4.界面风格、帮助设施和出错处理协议,预示了界面的复杂程度及用户接收该界面的程度。


描述程序处理过程的工具称为过程设计工具,它们可以分为图形、表格和语言3类。不论是哪类工具,对它们的基本要求都是能提供对设计的无歧义的描述,也就是应该能指明控制流程、处理功能、数据组织及其他方面的实现细节,从而在编码阶段能把对设计的描述直接翻译成程序代码。可以采用程序流程图、盒图、PAD图、判定表、判定树、过程设计语言PDL。


计算机软件本质上是信息处理系统,因此,可以根据软件所处理的信息的特征来设计软件。面向数据结构的设计方法最终目标是得出对程序处理过程的描述。这种设计方法并不明显地使用软件结构的概念,模块是设计过程的副产品,对于模块独立原理也没有给予应有的重视。因此,这种方法最适合于详细设计阶段使用。Jackson方法和Warnier方法是最著名的两个面向数据结构的设计方法。


程序复杂程度的定量度量

定量度量程序复杂程度的方法很有价值:把程序的复杂程度乘以适当常数即可估算出软件中错误的数量以及软件开发需要用的工作量,定量度量的结果可以用来比较两个不同的设计或两个不同算法的优劣;程序的定量的复杂程度可以作为模块规模的精确限度。用的比较广泛的有McCabe方法和Halstead方法。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值