2022年软件工程A作业参考答案.docx
《2022年软件工程A作业参考答案.docx》由会员分享,可在线阅读,更多相关《2022年软件工程A作业参考答案.docx(27页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、精选学习资料 - - - - - - - - - 作业 2 参考答案1 在软件开发的早期阶段为什么要进行可行性讨论?应当从哪些方面讨论目标系统的可行性?答:(1)开发一个软件时,需要判定原定的系统模型和目标是否现实,系统完成后所能带来的效益是否大到值得投资开发这个系统的程度,假如做不到这些, 那么花费在这些工程上的任何时间、 人力、软硬件资源和经费,都是无谓的铺张;可行性讨论的实质是要进行一次大大压缩简化了的系统分析和设计过程,就是在较高层次上以较抽象的方式进行的系统分析和设计的过程; 可行性讨论的目的就是用最小的代价在尽可能短的时间内确定问题是否能够解决;(2)一般说来,至少应当从以下三个方
2、面讨论每种解法的可行性:a.技术可行性;对要开发项目的功能、性能和限制条件进行分析,确定在现有的资源条件下,技术风险有多大,项目是否能实现,这些即为技术可行性讨论的内容;这里的资源包括已有的或可以搞到的硬件、软件资源,现有技术人员的技术水平和已有的工作基础;b.经济可行性;进行开发成本的估算以及明白取得效益的评估,确定要开发的项目是否值得投资开发,这些即为经济可行性讨论的内容对于大多数系统,一般衡量经济上是否合算,应考虑一个 “ 底线 ”,经济可行性讨论范畴较广,包括成本效益分析,长期公司经营策略,开发所需的成本和资源,潜在的市场前景;c.操作可行性;有时仍要讨论社会可行性问题,讨论要开发的项
3、目是否存在任何侵害、阻碍等责任问题;社会可行性所涉及的范畴也比较广,它包括合同、责任、侵权和其他一些技术人员经常不明白的陷阱等;必要时仍应当从法律、社会效益等更广泛的方面讨论每种解法的可行性;2 北京某高校可用的电话号码有以下几类:校内电话号码由 4 位数字组成, 第一位数字不是 0.校外电话又分为本市电话和外地电话两类;拨校外电话需要先拨 0,如是本市电话就接着拨 8 位数字(第一位不是 0),如是外地电话就拨 3 位区码后再拨 8 位电话号码(第一位不是 0);答:电话号码校内电话号码校外电话号码校内电话号码非零数字 位数字校外电话号码本市号码外地号码本市号码数字零 位数字外地号码数字零
4、位数字 位数字非零数字 数字零位数字数字位数字非零数字 位数字位数字数字数字 其中, 意思是或,从校内电话号码或校外电话号码中挑选一个; 表示重复,两边的数字表示重复次数的下限和上限;=意思是定义为;+意思是和,连接两个重量;作业 3 参考答案1为什么要进行需求分析?通常对软件系统有哪些需求?答:“ 需求分析” 确定系统必需完成哪些工作,也就是对目标系统提出完整、精确、详细的要求; 为了开发出真正满意用户需求的软件产品,第一必需知道用户的需求,只有深化懂得了用户的需求,我们的工作才会有意义;名师归纳总结 - - - - - - -第 1 页,共 15 页精选学习资料 - - - - - - -
5、 - - 对软件通常有以下需求:功能需求:指定系统必需供应的服务;性能需求: 指定系统必需满意的定时约束或容量约束,通常包括速度、信息量速率、主存容 量、磁盘容量、安全性等方面的需求;牢靠性和可用性需求:指定系统的牢靠性,可用性量化了用户可以使用系统的程度;出错处理需求:说明系统对环境错误应当怎么响应;接口需求:描述应用系统与它的环境通信的格式;逆向需求:说明软件系统不应当做什么;将来可能提出的要求:应当明确列出那些虽然不属于当前系统开发范畴,但是据分析将来很可能会提出来的要求;2怎样与用户有效地沟通以猎取用户的真实需求?答:(1)访谈访谈是最早开头使用的猎取用户需求的技术,也是迄今为止仍旧广
6、泛使用的需求分析技术;访谈有两种基本形式 ,分别是正式的和非正式的访谈;当需要调查大量人员的看法时,请被调查人填写调查表是特别有效的做法;在拜访用户的过程中使用情形分析技术往往特别 有效;所谓情形分析, 就是对用户将来使用目标系统解决某个详细问题的方法和结果进行分析;系统分析员利用情形分析技术,往往能够获知用户的详细需求;(2)面对数据流自顶向下求精 结构化分析方法实质上就是面对数据流自顶向下逐步求精进行需求分析的方法;通过可 行性讨论已经得出了目标系统的高层数据流图,需求分析的一个主要目标就是把数据流和数 据储备定义到元素级;为了达到这个目标,通常从数据流图的输出端着手分析;(3)简易的应用
7、规格说明技术 简易的应用规格说明技术是一种面对团队的需求收集技术;这种方法提倡用户与开发者亲密合作,共同标识问题,提出解决方案要素,商讨不同的方案并指定基本需求;目前,这 种技术已经成为信息系统领域使用的主流技术;(4)快速建立软件原型 快速建立软件原型,是最精确,最有效,最强大的需求分析技术;所谓软件原型,就是 快速建立起来的旨在演示目标系统主要功能的可运行的程序;构建软件原型的要点是,它应当实现用户看得见的功能,省略目标系统的 “ 隐含”功能;软件原型应当具有的第一个特性是“ 快速” ,其次个特性是“ 简单修改” ;6用状态转换图描画复印机的行为;答:复印机的状态如图 3-1 所示:图 3
8、-1 复印机状态图名师归纳总结 - - - - - - -第 2 页,共 15 页精选学习资料 - - - - - - - - - 作业 4 参考答案1 假 设 只 有SEQUENCE和DO_WHILE两 种 控 制 结 构 , 怎 样 利 用 它 们 完 成IF_THEN_ELSE操作?答:转化如下:K = 1 DO WHILE (条件.AND. K.EQ.1 程序块 1 K=K+1 END DO DO WHILE ( .NOT. 条件 .AND. K.EQ.1 程序块 2 K=K+1 END DO2假设答应使用SEQUENCE和 IF_THEN_ELSE两种掌握结构,怎样利用它们完成DO_
9、WHILE操作?答:转化如下;label: IF 条件 THEN 程序块GOTO label ELSE 程序块END IF 3画出以下伪码程序的程序流程图和盒图:START IF p THEN q DO WHILE f END DO ELSE BLOCK g n END END BLOCK IF STOP 名师归纳总结 答:(1)流程图如图4-1 所示:第 3 页,共 15 页- - - - - - -精选学习资料 - - - - - - - - - 开头pg q循环 WHILE pn fq循环停止图 4-1 从伪码变成的程序流程图(2)该程序的盒图如图4-2 所示:PTFqgf n图 4-2
10、 从伪码变成的程序盒图4下图给出的程序流程图代表一个非结构化的程序,请问:(1)为什么说它是非结构化的?(2)设计一个等价的结构化程序;(3)在( 2)题的设计中你使用附加的标志变量 flag 吗?如没用,请再设计一个使用 flag的程序;如用了,再设计一个不用 flag 的程序;答:(1)通常所说的结构化程序,是依据狭义的结构程序的定义衡量,符合定义规定的程序;图示的程序的循环掌握结构有两个出口,明显不符合狭义的结构程序的定义,因此是非结构 化的程序;(2)使用附加的标志变量flag ,至少有两种方法可以把该程序改造为等价的结构化程序,图 4-3 描画了等价的结构化程序的盒图;名师归纳总结
11、- - - - - - -第 4 页,共 15 页精选学习资料 - - - - - - - - - flag=TRUE flag=TRUEp AND flagFpTgflag=FALSEgFqTflag=FALSENOT qORNOT flag(a)解法 1 ( b)解法 2 图 4-3 与该图等价的结构化程序(用flag )(3)不使用 flag把该程序改造为等价的结构化程序的方法如图4-4 所示;FpTgNOT qORNOT flag图 4-4 与该图等价的结构化程序(不用 flag)5讨论下面的伪代码程序:LOOP : Set I to START+FINISH/2 If TABLEI=
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 2022 软件工程 作业 参考答案
限制150内