
P109 19、20、21、23、24、27
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 |
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 | 5 | 10 | 08-1-25 | 08-2-1 |
| 2 | 20 | 15 | 08-2-15 | 08-2-15 |
| 3 | 50 | 6 | 08-5-15 | |
| 4 | 40 | 50 | 08-4-15 | 08-4-1 |
| 5 | 60 | 50 | 08-7-1 | |
| 6 | 80 | 70 | 08-9-1 |
(1)预计工作的预算成本BCWS=
【答】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.万元,511.72万元,620.60万元和 556.26万元。按净现值法进行比较决策。
答: 因为A、B、C、D各个备选项目方案的NPV均 大于零,所以这些方案均具备财务可行性。 又因为620.60>556.26>511.72>420., 所以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元,所以应该选择乙设备。
第六章 软件风险管理
P149 19、20、21、22、24
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 | 20% | 30% |
| 一般 | 0.5 | 10% | 10% |
| 差 | 0.2 | 5% | -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%
因为乙项目的标准离差率大于甲项目的标准离差率,所以乙项目的风险大于甲项目。
第八章 面向过程的结构化设计
P208 1、6
1.储户将填好的存款单(或取款单)、存折交银行,银行工作人员做如下处理:
根据存(取)款单选择存款还是取款操作;如果是存款则进行存款处理;如果是取款则进行取款处理;存(取)款后打印存折。要求画出该系统的分层数据流图,并将其转换为软件结构图。
例:欲开发一个银行的活期存取款业务的处理系统:储户将填好的存/取款单和存折交给银行工作人员,然后由系统作以下处理;
(1)业务分类处理:系统首先根据储户所填的存/取款单,确定本次业务的性质,并将存/取款单和存折交下一步处理;
(2)存款处理:系统将存款单上的存款金额分别记录在存折和帐目文件中,并将现金存入现金库;最后将存折还给储户;
(3)取款处理:系统将取款单上的取款金额分别记录在存折和帐目文件中,并从现金库提取现金;最后将现金和存折还给储户。
绘制该系统的数据流图和软件结构图。
6、邮寄包裹收费标准如下:
若收件地点在1000公里以内,普通件每公斤2元,挂号件每公斤3元。若收件地点在1000公里以外,普通件每公斤2.5元,挂号件每公斤3.5元;若重量大于30公斤,超过部分每公斤加收0.5元。请绘制确定收费的判定表和判定树。
(1)提取条件:地点,邮件类型,重量。
(2)标出各种条件在问题中的取值范围
| 条件名 | 取值 | 取值数 |
| 地点 | <=1000 >1000 | 2 |
| 邮件类型 | 普通件 挂号件 | 2 |
| 重量 | <=30公斤 >30公斤 | 2 |
(4)提取问题的动作,绘制判定表
| 规则 | |||||||||
| 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | ||
| 条件 | 地点〈=10000 | T | T | T | T | ||||
| 地点〉1000 | T | T | T | T | |||||
| 邮件类型为普通件 | T | T | T | T | |||||
| 邮件类型为挂号件 | T | T | T | T | |||||
| 重量<=30公斤 | T | T | T | T | |||||
| 重量>30公斤 | T | T | T | T | |||||
| 动作 | 每公斤收费2元 | T | T | ||||||
| 每公斤收费2.5元 | T | T | |||||||
| 每公斤收费3元 | T | T | |||||||
| 每公斤收费3.5元 | T | T | |||||||
| 超过30公斤部分, 加收0.5元/公斤 | T | T | T | T | |||||
普通件
重量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元)
第九章 面向过程的结构化实现
P232 5
第十章 软件的技术度量
P252 2、3、4、6、7
4.某系统体系结构图如右下所示,完成如下要求:
1)求出该体系结构的深度;
2)求出该体系结构的宽度;
3)求出其中模块m的扇入和的扇出。
第十一章 面向对象概述
P278 13
第十二章 面向对象分析
P307 6、9、11、12、13、14
第十三章 面向对象设计
P333 8、13
第十五章 面向对象系统的技术
P357 3、4、6、7、8、9
