软件工程习题解答(含基本章节应试例子以及一个UML案例)

软件⼯程习题解答(含基本章节应试例⼦以及⼀个UML案例)
软件⼯程习题解答
⼀、软件⽣存周期各阶段的基本任务?
1. 问题定义:
(1)回答要解决的问题是什么。
(2)系统分析员应该提出关于问题性质、⼯程⽬标和规模的书⾯报告。
(3)经过和⽤户讨论,澄清含糊不清的地⽅,改正理解不正确的地⽅,得出⼀份双⽅都满意的⽂档。
(4)问题定义是软件⽣命周期中最简短的阶段。
2.可⾏性研究:
(1)前⼀阶段定义的问题有可⾏的解决办法吗?
(2)系统分析员要进⾏⼀次⼤⼤压缩和简化了的系统分析和设计。导出⾼层逻辑模型(⽤数据流图表⽰)。确定⼯程规模和⽬标,准确估计系统的成本和效益。
(3)使⽤部门的负责⼈根据可⾏性研究的结果决定是否继续进⾏该⼯程的开发⼯作。
3.需求分析:
(1)主要确定⽬标系统必须具备哪些功能。
(2)系统分析员和⽤户密切配合,充分交流,得出经⽤户确认的系统逻辑模型(数据流图、数据字典、算法描述)。
4.总体设计:
(1)回答如何解决问题。
(2)系统分析员
应使⽤系统流程图或其他⼯具描述每种可能系统;
估计每种⽅案的成本和效益。
推荐⼀较好的系统──有其详细计划。
设计软件的结构(⽤层次图或结构图描述)。
5.详细设计:
(1)回答应该怎样具体地实现这个系统。
(2)设计出程序的详细规格说明(⽤HIPO层次图加输⼊/处理/输出图)或PDL语⾔(过程设计语⾔)。
6.编码和单元测试:
(1)写出正确的容易理解,容易维护的程序模块
(2)程序员:
选取⼀种适当的⽤⾼级语⾔书写程序(或汇编语⾔)。
仔细测试编写出的每⼀个模块。
7.综合测试:
(1)通过各种类型的测试,使软件达到预定的要求。
(2)最基本的测试是集成测试和验收测试⽅法。
集成测试是根据设计的软件结构,把经过单元测试检验的模块按某种选定的策略装配起来,在装配的过程中对程序进⾏必要的测试。
验收测试是按照需求规格说明书的规定,由⽤户对⽬标系统进⾏验收。
(3)⽤正式⽂档将测试计划、详细测试⽅案以及实际测试结果保存。
(4)以正式或⾮正式的⽅式对⽤户进⾏培训。
8.软件维护:
(1)使系统持久地满⾜⽤户的需要。
(2)四类维护:
改正性维护:诊断和改正使⽤过程中发现的软件错误。
适应性维护:修改软件以适应环境变化。
完善性维护:根据⽤户要求,改进或扩充软件。
预防性维护:修改软件为将来的维护预先准备。
第⼆章可⾏性研究
1.已知某软件包具有三个主要功能:输⼊数据、更新数据、产⽣报表。根据历史资料记载,实现每个功能所需源代码⾏数估算如下:
①输⼊数据:a=l00 m=200 b=300
②更新数据:a=200 m=300 b=400
③产⽣报表:a=300 m=400 b=500
三个功能的软件⽣产率都是200⾏/⼈⽉,每⾏成本lO元/⾏,请⽤LOC技术估算出该软件包的成本和⼯作量。
解:
2.某计算机系统投⼊使⽤后、5年内每年可节省⼈民币2 O0O元,假设系统的投资额为5 000元,年利率为12%。试计算投资回收期和纯收⼊。
解:
1、投资回收期
最初投资额为5000元,经过3年后可以节省4814.28元,⽐最初投资还少185.72元,
第4年⼀年再次节省1273.89元,则
185.72÷1273.89=0.15
3 + 0.15=3.15
因此这项⼯程的投资回收期是3.15年。
2、纯收⼊
7224.53 - 5000=2224.53元> 0,值得投资。
第三章需求分析
1.什么是数据流图?其作⽤是什么?其中的基本符号各表⽰什么含义?
数据流图:简称DFD,是SA(结构化分析)⽅法中⽤于表⽰系统逻辑模型的⼀种⼯具,是⼀种功能模型。
作⽤:它以图形的⽅式描绘数据在系统中流动和处理的过程,反映系统必须完成的逻辑功能.
基本符号有四种:
→,箭头,表⽰数据流; ○,圆或椭圆,表⽰加⼯; =,双杠,表⽰数据存储;□,⽅框,表⽰数据的源点或终点.
2.某银⾏的计算机储蓄系统功能是:将储户填写的存款单或取款单输⼊系统,如果是存款,系统记录存款⼈姓名、住址、存款类型、存款⽇期、利率等信息,并打印出存款单给储户;如果是取款,系统计算清单储户。请⽤DFD 和IDEF0描绘该功能的需求,并建⽴相应的数据字典。
(1)数据流条⽬:
数据流名称:存款单
别名:⽆
简述:储户存款时填写的项⽬
来源:储户
去向:记帐
数据流量:未知
组成:姓名+住址+存款类型+存款⽇期+利率
数据流名称:取款单
别名:⽆
简述:储户取款时填写的项⽬
来源:储户
去向:统计
数据流量:未知
组成:姓名+住址+取款类型+取款⽇期+利率
数据流名称:清单
别名:⽆
简述:储户取款后得到的项⽬
来源:记录
去向:储户
数据流量:未知
组成:姓名+住址+取款类型+取款⽇期+利率+余额
(2)数据存储条⽬:刘廷析
数据存储名称:账单
别名:⽆
简述:存放储户信息及其账⽬
组成:姓名+住址+余额+存款类型+最后修改⽇期+利率
组织⽅式:未知
查询要求:能⽴即查询
(3)数据项条⽬:
未知在烈日和暴雨下
(4)加⼯条⽬:
加⼯名:分类检查
编号:⽆
激发条件:接收到存/取款单
优先级:优先
输⼊:存/取款单
输出:存/取款单
加⼯逻辑:IF 存款单THEN 把存款单输出到统计
重庆市联合产权交易所ELSE
把取款单输出到统计
ENDIF
加⼯名:统计
编号:⽆
激发条件:取款单
优先级:⽆
输⼊:取款单
输出:清单
加⼯逻辑:根据账单检查此储户是否存在,不存在输出错误{
IF 取款数<;余额THEN 余额=余额-取款数输出清单到储户,输出现⾦到储户
ELSE
输出错误清单到储户
ENDIF
}
加⼯名:记录
编号:⽆
激发条件:存款单
优先级:⽆
输⼊:存款单
输出:存款单
加⼯逻辑:根据账单检查此储户是否存在,不存在则建⽴此储户{
余额=余额+存款数
输出存款单到储户
}qc工程图
3.某公司承担空中和地⾯运输业务。计算货物托运费的⽐率规定如下:
空运,如果货物重量⼩于等于2kg.则⼀律收费6元;如果货物重量⼤于2 kg⽽
⼜⼩于等于20 kg,则收费3元/kg;如果货物重量⼤于20 kg,则收费4元/kg。
社会关系学地运,若为慢件每kg收费为l元,若为快件,当重量⼩于等于 20 kg时,收费为 2
元/kg,当货物重量⼤于 20 kg时,则收费为 3元/kg。
请画出对应于计算托运费⽐率的判定树和判定表。
解:
判定表:
4.选择⼀个系统(例如⼈事档案管理系统、图书管理系统、医院监护系统、⾜球俱乐部管理系统、财务管理系统、学⽣选课系统、飞机订票系统等),⽤ SA⽅法对它进⾏分析,画出系统的分层 DFD图。解:下⾯是⼀个学⽣选课系统的DFD 。
新补充:
1、某图书出版公司希望每⽉定期向固定客户邮寄最近⼀个⽉的图书分类⽬录。客户可在其收到的⽬录上圈定⾃⼰要买的书。出版公司按照客户的反馈信息邮寄图书。要求为出版公司设计软件,以实现以下功能:(1)⾃动⽣成图书分类⽬录;
(2)⾃动处理客户反馈信息。
试⽤⾯向数据流的⽅法给出系统的数据流图,并设计出软件结构图。
第四章概要设计
3.衡量模块独⽴性的两个标准是什么?它们各表⽰什么含义?
windows ce5.0两个定性的度量标准:耦合与内聚性
耦合性:也称块间联系。指软件系统结构中各模块间相互联系紧密程度的⼀种度量。模块之间联系越紧密,其耦合性就越强,模块的独⽴性则越差。
内聚性:也称块内联系。指模块的功能强度的度量,即⼀个模块内部各个元素彼此结合的紧密程度的度量。模块内元素联系越紧密,内聚性越⾼。
6.什么是软件结构?简述软件结构设计优化准则。
软件结构:软件系统的模块层次结构,反映了整个系统的功能实现,即将来程序的控制体系。
软件结构设计优化准则:
a.划分模块时,尽量做到⾼内聚,低耦合,保持模块相对独⽴性,以此为原则优化初始的软件结构。
b.⼀个模块的作⽤范围应在其控制范围之内,且判定所在的模块应与受其影响的模块在层次上尽量靠近
c.软件的深度、宽度、扇⼊、扇出应适当。
D.模块的⼤⼩要适中。
E.模块的控制范围模块的接⼝要简单、清晰、含义明确,便于理解,易于实现、测试与维护。
2、已知模块C中的⼀个判定影响到模块B,如图所⽰,它违反了SD的设计原则。试问: 可以采⽤哪些⼿段对结构图作改进,请说明改进办法并画出改进的结构图。
3、已知有⼀抽象的DFD图如下所⽰,请⽤SD⽅法画出相应的结构图。
答:
4、⾼考录取统分⼦系统有如下功能:
(1) 计算标准分:根据考⽣原始分计算,得到标准分,存⼊考⽣分数⽂件;
(2) 计算录取线分:根据标准分、招⽣计划⽂件中的招⽣⼈数,计算录取线,存⼊录取线⽂件。
试根据要求画出该系统的数据流程图,并将其转换为软件结构图。
答:
(1) 数据流图:
(2) 软件结构图:
5、图书馆的预定图书⼦系统有如下功能:
(1) 由供书部门提供书⽬给订购组。
(2) 订书组从各单位取得要订的书⽬。
(3) 根据供书⽬录和订书书⽬产⽣订书⽂档留底。
(4) 将订书信息(包括数⽬,数量等)反馈给供书单位。
(5) 将未订书⽬通知订书者。
(6) 对于重复订购的书⽬由系统⾃动检查,并把结果反馈给订书者。试根据要求画出该问题的数据流程图,并把其转换为软件结构图。答:(1) 数据流图:

本文发布于:2024-09-21 23:29:25,感谢您对本站的认可!

本文链接:https://www.17tex.com/xueshu/358006.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:系统   模块   软件   数据   储户   功能   设计   测试
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2024 Comsenz Inc.Powered by © 易纺专利技术学习网 豫ICP备2022007602号 豫公网安备41160202000603 站长QQ:729038198 关于我们 投诉建议