您的当前位置:首页正文

软件工程课后题目

2020-04-28 来源:易榕旅网
.

第四章 软件项目估计

19、已知一个软件项目的记录,开发人员M=3人,其代码行数=12.1KLOC,工作量E=24PM,成本S=168000美元,错误数N=29,文档页数Pd=365页。试计算开发该软件项目的生产率P、平均成本C、代码出错率EQR和文档率D。0201 解: 1.软件开发的生产率P为:

P = L / E = 12.1×103LOC / 24PM = 504 LOC/PM 2.开发每行代码的平均成本C为:

C = S / L = 168000美元 / 12100LOC=13.9美元/LOC 3.代码出错率EQR为:

EQR = N / L = 29个/12.1KLOC=2.4个/KLOC 4.软件的文档率D为:

D = Pd / L = 365页 / 12.1KLOC = 30页/ KLOC

20、使用COCOMOⅡ模型来估算建造一个简单的ATM软件(产生12个屏幕、10个报表、大约需要80个软件构件)所需的工作量。假设平均复杂度(即屏幕的权为2,报表的权为5,构件的权为10)和平均开发者/环境成熟度(即平均生产率为13NOP/人.月),复用的百分比为40%。使用基于对象点的应用组装模型。试完成以下计算:

1) 计算项目新的对象点数NOP。(NOP=对象点×(1-复用%)) 2) 根据NOP值进行工作量估算(人月)。

3) 软件人员劳动力平均价格是每月4000人民币,求每个NOP的成本。(5分)97 1) 对象点=12×2+10×5+80×10=874 NOP=874×(1-40%)=524.4

2) 估算工作量=NOP/PROD=524.4/13=40(人月) 3) 每个NOP成本=4000/13=308(元/NOP)

21、根据下面的信息域特性值:

外部输入数 10 外部输出数 12 外部查询数 15 内部接口数 8 外部文件数 8 假设各项加权因子均为5,不考虑复杂度调整值(即)试完成以下计算 1) 计算项目的功能点的总计数值FP

2) 设平均生产率为10FP/pm,软件人员劳动力平均价格是每月5000人民币,求每个FP

的成本

3) 根据FP值计算总的项目成本,并进行工作量估算(人月) 【答】1)FP=(10+12+15+8+8)*5*0.65=172.25 2)5000/10=500(人民币)

3)500*172.25=86125人民币(总项目成本) 172.3/10=17.2(人月)

.

.

23、下表是某公司的一个项目的历史数据,假设评价时间为08年4月1日,试计算获得值分析(10分):

工作任务 1 2 3 4 5 6 试计算:

(1)预计工作的预算成本BCWS=

估计工作量成本(人天) 5 20 50 40 60 80 实际工作量成本 10 15 6 50 50 70 估计完成日期 08-1-25 08-2-15 08-5-15 08-4-15 08-7-1 08-9-1 实际完成日期 08-2-1 08-2-15 08-4-1 【答】BCWS=5+20=25

(2)已完成工作的预算成本BCWP=

【答】BCWP=5+20+40=65

(3)完成工作的预算成本BAC=

【答】BAC=5+20+50+40+60+80=255 (4)已完成工作的实际成本ACWP=

【答】ACWP=10+15+50=75

25、某个固定资产投资项目需要原始 投资1000万元,有A、B、C、D 四个互相排斥的 备选方案可供选择,各方案的净现值指标分别 为420.89万元,511.72万元,620.60万元和 556.26万元。按净现值法进行比较决策。

答: 因为A、B、C、D各个备选项目方案的NPV均 大于零,所以这些方案均具备财务可行性。 又因为620.60>556.26>511.72>420.89, 所以C方案最优,其次为D方案,再次为B方案, 最差为 A方案。

27、某公司准备购置一台设备,有甲、乙两种可供选择,甲设备比乙设备高5 030元,但每年使用费可节约600元。该设备可以使用10年,假设年利率为6%。请问:该公司应选择使用哪一种设备?

答:每年节约费用可视为现金流入,将其折为现值,然后与5 000元比较,若高于5 000元,就选择甲设备,否则选择乙设备。

P=A×(P/A,6%,10) =600×(P/A,6%,10)=600×7.3601=4 416.06(元) 因为小于5 000元,所以应该选择乙设备。

第六章 软件风险管理

.

.

19、某软件小组计划项目中采用50个可复用的构件,每个构件平均是100 LOC,本地每个LOC的成本是13元人民币。以下是该小组定义的一个项目风险。

①风险识别:预定要复用的软件构件中只有50%将被集成到应用中,剩余功能必须定制开发。

②风险概率:60%。

③该项目风险的风险曝光度是(19500元)。

解析:风险曝光度(Risk Exposure,RE)的计算公式为:RE=P×C。其中,P是风险发生的概率,C是风险发生时带来的项目成本。

该软件小组计划采用50个可复用的构件,如果只有50%可能被使用,则25个构件必须从头开发。由于构件平均是100 LOC,每个LOC的成本是13元人民币,则开发构件的整体成本C=25×100×13=32 500元人民币。因此RE=0.6×32 500=19 500元人民币。

20、某公司历史数据表明:每KLOC的错误率为0.36%,每个错误平均损失10000元。考虑对该项目使用附加评审方法,每评审100KLOC的程序需花费1000元,可以减少50%的错误,当前项目的大小估算为50KLOC。试计算风险预期,该附加评审方法值得采用吗? 没有采用评审技术:50×0.36%×10000=1800(元)

采用评审技术:50×0.36%×50%×10000+1000×50/100=1400(元) 值得采用附加评审方法

21、在一项目中,计划有60个可复用的软件构件,平均每个构件的程序行数是100LOC。本地数据表明,每LOC的成本是50元。现已知存在一种项目风险,即计划复用的软件构件中可能只有60%将集成到应用系统中,这种风险发生的概率是80%。试计算分险预期值。 解:风险预期值 = 风险概率 * 项目影响 = 80% * (40% * 60 * 100 * 50)

= 96000(元)

22、已知甲方案投资收益率的期望值为15%,乙方案投资收益率的期望值为12%,两个方案都存在投资风险。比较甲、乙两方案风险大小应采用的指标是?

答:需要采用标准离差率。因为标准离差仅适用于期望值相同的情况,在期望值相同的情况下,标准离差越大,风险越大;标准离差率适用于期望值相同或不同的情况,在期望值不同的情况下,标准离差率越大,风险越大。

24、某企业有甲、乙两个投资项目,计划投资额均为1000万元,其收益率的概率分布如下表所示: 市场状况 好 一般 差 概率 0.3 0.5 0.2 甲项目 20% 10% 5% 乙项目 30% 10% -5%

要求:

(1)分别计算甲乙两个项目收益率的期望值。

(2)分别计算甲乙两个项目收益率的标准差、标准离差率。 (3)若你是该项目的决策者,你会选择哪个方案?

.

.

[答案]

(1)甲项目收益率的期望值=0.3×20%+0.5×10%+0.2×5%=12% 乙项目收益率的期望值=0.3×30%+0.5×10%+0.2×(-5%)=13% (2)甲项目收益率的标准差=[(20%-12%)2×0.3+(10%-12%)2×0.5+(5%-12%)2×0.2]1/2=5.57%

乙项目收益率的标准差=[(30%-13%)2×0.3+(10%-13%)2×0.5+(-5%-13%)2×0.2]1/2=12.49%

(3)因为甲乙两个项目的期望值不同,所以应当比较二者的标准离差率进而比较风险的大小

甲项目的标准离差率=5.57%/12%×100%=46.42% 乙项目的标准离差率=12.49%/13%×100%=96.08%

因为乙项目的标准离差率大于甲项目的标准离差率,所以乙项目的风险大于甲项目。

第七章 面向过程的结构化分析

6

.

.

.

.

7

.

.

.

.

8

.

.

.

.

第八章 面向过程的结构化设计

1.储户将填好的存款单(或取款单)、存折交银行,银行工作人员做如下处理:

根据存(取)款单选择存款还是取款操作;如果是存款则进行存款处理;如果是取款则进行取款处理;存(取)款后打印存折。要求画出该系统的分层数据流图,并将其转换为软件结构图。

例:欲开发一个银行的活期存取款业务的处理系统:储户将填好的存/取款单和存折交给银行工作人员,然后由系统作以下处理;

(1)业务分类处理:系统首先根据储户所填的存/取款单,确定本次业务的性质,并将存/取款单和存折交下一步处理;

(2)存款处理:系统将存款单上的存款金额分别记录在存折和帐目文件中,并将现金存入现金库;最后将存折还给储户;

(3)取款处理:系统将取款单上的取款金额分别记录在存折和帐目文件中,并从现金库提取现金;最后将现金和存折还给储户。

绘制该系统的数据流图和软件结构图.

.

.

6、邮寄包裹收费标准如下:

若收件地点在1000公里以内,普通件每公斤2元,挂号件每公斤3元。若收件地点在1000公里以外,普通件每公斤2.5元,挂号件每公斤3.5元;若重量大于30公斤,超过部分每公斤加收0.5元。请绘制确定收费的判定表和判定树。

(1) 提取条件:地点,邮件类型,重量。 (2) 标出各种条件在问题中的取值范围 条件名 地点 <=1000 >1000 普通件 挂号件 <=30公斤 >30公斤 取值 2 取值数 邮件类型 重量 2 2 (3)计算这些条件在问题中的取值范围:2*2*2=8 (4)提取问题的动作,绘制判定表

规则 .

.

1 地点〈=10000 地点〉1000 邮件类型为普通件 2 T T T T 3 T T T T 4 T T T T 5 T T T T T 6 T T T T T 7 T T T T T 8 T T T T T T T T T 条件 邮件类型为挂号件 重量<=30公斤 重量>30公斤 每公斤收费2元 每公斤收费2.5元 动作 每公斤收费3元 每公斤收费3.5元 超过30公斤部分, 加收0.5元/公斤 重量w<=30公斤 收费=2元/公斤

普通件 重量w>30公斤 收费=2元/公斤(另(w-30)*0.5元)

地点〈=10000

重量w<=30公斤 收费=3元/公斤

挂号件 重量w>30公斤 收费=3元/公斤(另(w-30)*0.5元) 邮寄包裹

收费标准 重量w<=30公斤 收费=2.5元/公斤

普通件 重量w>30公斤 收费=2.5元/公斤 (另(w-30)*0.5元)

地点〉10000

重量w<=30公斤 收费=3.5元/公斤

挂号件 重量w>30公斤 收费=3.5元/公斤(另(w-30)*0.5元)

4.某系统体系结构图如右下所示,完成如下要求:

1)求出该体系结构的深度; 2)求出该体系结构的宽度;

3)求出其中模块m的扇入和的扇出。 (1)5 (2)7

(3)扇入1 扇出4

.

Sadebklcmfighjnorpq.

(补充习题)

请把下面的DFD图转换为SC(软件结构图)

.

.

“判定三角形类别”程序算法用等价类划分设计测试用例,并检查逻辑覆盖标准。

.

.

26. 某个固定资产投资项目需要原始投资1000万元,有A、B、C、D 四个互相排斥的备选方案可供选择,各方案的净现值指标分别为420.89万元,511.72万元,620.60万元和556.26万元。试按净现

值法进行比较决策

 [解:] 因为A、B、C、D各个备选项目方案的NPV均大于零,所以这些方案均具备财务可行性。

 又因为620.60>556.26>511.72>420.89, 所以C方案最优,其次为D方案,再次为B方案,最差为 A方案。

27.某公司准备购置一台设备,有甲、乙两种可供选择,甲设备比乙设备高5030元,但每年使用费可节约600元。该设备可以使用10年,假设年利率为6%。该公司应选择使用哪一种设备?

 [解:]每年节约费用可视为现金流入,将其折为现值,然后与5030元比较,若高于5030元,就选择甲设备,否则选择乙设备。

.

.

 P=F×(P/F,6%,10)  =600×(P/F,6%,10)  =600×7.3601  =4416.06(元)

 因为小于5 030元,所以应该选择乙设备。

如图所示,设有一程序流程图如下图所示,运用我们学习过得软件测试技术知识,回答下列各题。

(1)请将该流程图转换为流图;并用三种方法确定环形复杂性度量V(G)?

(2)确定独立路径集合并为其设计测试用例?

.

.

(1)

1. V(G)=3+1=4三个内环,一个外环 2. V(G)=11-9+2=4 3. V(G)=3+1=4 (2) 1-2-3-9 1-2-4-5-9 1-2-4-6-7-9 1-2-4-6-8-9

.

.

方法继承因子MIF是MOOD度量套件的度量方法,计算公式定义如下:

MIFMM11TCTCi(Ci) 其中,Ci是体系结构中的一个类,Mi(Ci)是类Ci中继承的

a(Ci)(未被覆写的)方法的数目,Ma(Ci)是所有可由Ci调用的方法的数量;Md(Ci)为在类Ci中声明的方法的数量, TC为系统中类的个数。试根据下面给出的源代码,将中间结果填入表中,并由此计算方法继承因子MIF的值。(10分)

Class A{ int a; void x( ){… } void y( ){ …} void z( ){ …} } Class B extends A{ int b; Md(Ci) void y( ){ … } void z( ){ …} void get( ){ …} } Class C extends A{ int c; void z( ){ } void w(){ } } Ma(Ci)

类 A B C 类 A B C Mi(Ci) DC(Ci) Mo(Ci) Mn(Ci) 2 0 0 0 2 1 3 1 1 以上单元格内容每格1分

MIF = (0+2+1)/(2*3 + 0 + 0) = 1/2 1分

.

.

当无人使用ATM时,ATM处于空闲状态。一旦出现故障或是银行工作人员例行维护时,ATM处于维护状态。当顾客插入银行卡时,ATM进入激活状态。当ATM处于激活状态时,一旦顾客选择取消或结束事务操作时,ATM都回到空闲状态。在激活状态里,ATM首先进入验证子状态;验证通过时进入到选择业务子状态;当顾客选择了某项业务后,ATM进入执行业务子状态;当事务执行结束顾客选择继续操作时,ATM回到选择业务子状态

注销空激活无余额拖欠账务激活结欠

2.试将下面的数据流图转换成相应的软件体系结构,其中3、4为主变换,9为子变换。(8分)

S4接受35611S11287910 .

.

4.如图是系统的部分类模型。模型里的类都是需要持久化的对象,请将模型中的类转换成相应的关系模型。(7分)

A-a1-a2**1*B-b1-b2C-c1-c2111D-d1-d2-e1-e2E*

A(Aid,a1,a2) 1分

B(Bid,b1,b2,Aid)1分

C(Cid,c1,c2,Bid,Bid)1分 A-C (Aid,Cid) 2分 D(Bid,d1,d2,Cid)1分 E(Bid,e1,e2,Cid)1分 5.UML综合应用(13分):

某网上书店系统完成如下功能:顾客可以浏览系统来查询书籍,顾客可以输入个人信息(姓名、地址、昵称、邮件)注册成书店会员;会员登录后可以借书、购买书籍等;管理人员可以进行书籍管理、会员信息管理等。当会员购买书籍时,先向系统提交书籍信息(书名、作者、ISBN等),系统检索并显示满足条件的书籍,会员选择所要的书籍,选择付款方式,系统会生成相应订单记录,相应书籍数量会被修改,并根据订单金额修改会员积分。 1)根据以上描述,画出该系统的用例图。

2)请识别会员购书场景中参与协作的类,建立相应的类图。 3)请用活动图描述会员购书场景。

.

.

查询预订顾客退票航班信息管理管理人员订票信息管理航班座位预订旅客

.

因篇幅问题不能全部显示,请点此查看更多更全内容