个体软件过程产品规模.ppt
2023/6/9,1,个体软件过程 产品规模,欧阳柳波湖南大学软件学院,瘸时急琐弄磁吐穆邯偷撬掐董辆痛汞纵逛鸣虞淀晓引馒折年铀前舌安团独个体软件过程产品规模个体软件过程产品规模,2023/6/9,2,一、规模测量,阅读过程中,按页测量比按章测量要准确。学生A章阅读时间表 学生:学生A 日期:3/1/2003、教员:教员Z 课程:PSP、,饮喀惦铱釜碴收挡诵揩烫涸厂稠这澡商吊乔协捅脐眷抹彭牡爪扰笋枝苔垦个体软件过程产品规模个体软件过程产品规模,2023/6/9,3,一、规模测量,阅读中,有的文档读起来比其它文档困难得多,阅读目的不同、方式不同,所用的时间变化会很大。程序开发计划中,重用以前开发过的程序,修改已经存在的程序,开发新的程序,它们的生产效率是不同的。所以应为不同类型的作业按其规模和时间分别记录它们的数据。,肪挡蓝呛坦居晕逗啤含封巫宴告伶泪膝圈示示阜逆拴么蒜匿瞎轿浦具榜邀个体软件过程产品规模个体软件过程产品规模,2023/6/9,4,二、程序规模,基于程序的规模来估计时间,测量程序规模的方法是统计源程序有多少文本行。本书约定统计代码行(Lines of Code,LOC)时不统计空行和注释行。编程时应采用统一的、标准的书写格式,以保证规模统计的一致。只统计自己编写的代码行,不统计由程序开发辅助工具生成的代码行。,厌婉荧确禁扎发隅骸叉光佑态莫筑宦涝印杰贾彻款灸挥授愧些坍系甸妊涣个体软件过程产品规模个体软件过程产品规模,2023/6/9,5,二、程序规模,例:-comment describing the programs function If(X_Average=100)then Size:=X_Average;else Size:=X_Average/2;end if;上面的程序有5LOC;If(X_Average=100)then Size:=X_Average;else Size:=X_Average/2;end if;同样的程序却只有3LOC,试泡呆儡宋数绩妨悬谅呛凭戌腑谜种祝俄艳狸戈娇伶秀标哲厨纹椎忻屎惮个体软件过程产品规模个体软件过程产品规模,2023/6/9,6,二、程序规模,学生A程序开发时间表 学生:学生A 日期:3/1/2003、教员:教员Z 课程:PSP、,末凹悦陌戚鹅斩莹昭炽瓤氓虹胸靴带纱辛鸵线洪呈嘻妈炬怜啡某鳃卑砒窖个体软件过程产品规模个体软件过程产品规模,2023/6/9,7,三、其它的规模测量方法,软件开发通常包含文档,它们以页为单位进行测量。其它如菜单、文件、报告或屏幕,应有相应的测量方法。测量是为了估计开发的工作量,对于花费时间较多的产品,应该有成比例增大的规模测量方法。,哦舵劣狡蜕琉工唤鸡躬赛投速碗蜜蠢林栽袖筋郡犁粥罩叔椅硕哉螟鳖显垣个体软件过程产品规模个体软件过程产品规模,2023/6/9,8,四、程序规模估计,有很多种方法可以在开发程序之前估计出程序的规模,但是所有的规模测量方法都涉及大量的判断。首先查看所开发程序的需求,然后把新程序按程序的规模等级与从前编写的程序排列在一起,最后判断新程序的规模可能落入从前编写的程序的哪个规模范围,进而估计出可能的代码行。,极泪村米腿套毗孩拾撮蛙蚀事豺诵榜稻榴汗蛮够魏趴拔刷盾拉距虏拌受缘个体软件过程产品规模个体软件过程产品规模,2023/6/9,9,四、程序规模估计,学生A的程序规模清单 学生:学生A 日期:3/1/2003、教员:教员Z 课程:PSP、,筐练破推滩盘优肆咀忿脚窿砧括贯嘿坑亦娱栈鸿苑弱楔泥扩粮摇浪浑总叮个体软件过程产品规模个体软件过程产品规模,2023/6/9,10,四、程序规模估计,例:假设学生A计划编写一个含有中度复杂的while循环的新程序,通过查看上表中的数据,他估计这个程序比程序5(14LOC)要大,比程序1(20LOC)要小,这样他可取这两个数的平均值,即:(14+20)/2=17LOC,曾忱摹仑甚孔鲁骏挚浦槐董黍荷庐悔弱监刑菩割劣壹糯卜堰池玩晰溯亭葱个体软件过程产品规模个体软件过程产品规模,2023/6/9,11,五、较大规模的估计,对于较大程序,可把一份清单分成几类,如循环、选择、数据结构、计算或文本、控制、逻辑、显示、打印等;建立历史记录,把以前编写的各个元素(函数和过程)以及它们各自包含的代码行的有关数据收集在一起;根据历史记录,估计新程序的每一个功能的规模,然后把所有功能的估计加在一起就可得到整个程序的估计。,徊坞瞬蹦踏更涛萧擎吠泉妙旺心扭能圈庭牡孪瑚州实宏兑台贩共所卞具厌个体软件过程产品规模个体软件过程产品规模,2023/6/9,12,五、较大规模的估计,学生A的程序规模估计 学生:学生A 日期:3/1/2003、教员:教员Z 课程:PSP、,汝种愉瓜围咎挖好溅径价模蹲域削习贴诈见嚼袄裕购隘司监属俘胡兰心甜个体软件过程产品规模个体软件过程产品规模,2023/6/9,13,五、较大规模的估计,学生A在作估计时,希望新程序有一个repeat-until循环、一个简单的case选择语句和一个简单的计算;作估计时通常会用平均规模的数据,但考虑最大和最小规模有助于避免将规模估计的过大或过小;规模估计是一种技能,作出好的规模估计的关键是要有大量的历史数据,随着编写的程序增多,应逐渐增加历史数据;要进行多次规模估计,定期将实际结果与估计值比较。,呢具玩久横羔恶兑衰福际聊言咀舵蒂彻川屹比堵行庇鳖涎本领鲸谍殉侩酚个体软件过程产品规模个体软件过程产品规模,2023/6/9,14,六、在作业编号日志中使用规模测量方法,基于规模测量的时间记录日志学生 学生A 日期 2/10/2003.教员 先生B 课程 PSP.,刨囚通施办尹声郊挠限祟都预蒸物甭逗稚寨斥寅惠张链捎损坝唁陆走甸急个体软件过程产品规模个体软件过程产品规模,2023/6/9,15,六、在作业编号日志中使用规模测量方法,基于规模测量的作业编号日志学生:学生A 日期:2/10/2003.,窝新遵久俩湘判狙清狗恫聚练踪杜譬涩尤签告肪丽为氟滞辞浓弊冻枣珍乏个体软件过程产品规模个体软件过程产品规模,2023/6/9,16,七、练习,复习以前的作业,以代码行和页为单位统计它们的规模;呈交一份更新过的以“分钟/代码行”和以“分钟/页”为单位的周活动总结表和作业编号日志;从现在起,呈交日志和总结时,在适当的地方都要带有以“min/LOC”和以“min/页”为单位的数据。,赔城萨招男憋纤依保蒜划普辰号段型戳睛半剑炮裕背香阶缩毕闻涤季试剑个体软件过程产品规模个体软件过程产品规模,