软件工程课后习题答案2..优秀PPT.ppt
1其次章其次章1 1 什么是软件过程什么是软件过程?它与软件工程方法学有何关系它与软件工程方法学有何关系?软件过程是为了开发出高质量的软件产品所需完成的一系列软件过程是为了开发出高质量的软件产品所需完成的一系列任务的框架,它规定了完成各项任务的工作步骤。任务的框架,它规定了完成各项任务的工作步骤。软件过程定义了运用技术方法的依次、应当交付的文档资料、软件过程定义了运用技术方法的依次、应当交付的文档资料、为保证软件质量和协调软件变更必需实行的管理措施,以为保证软件质量和协调软件变更必需实行的管理措施,以及标记完成了相应开发活动的里程碑。及标记完成了相应开发活动的里程碑。软件过程是软件工程方法学的软件过程是软件工程方法学的3 3个重要组成部分之一。个重要组成部分之一。作业及解答21.1.银行计算机储蓄系统的工作过程大致如下:储户填写的银行计算机储蓄系统的工作过程大致如下:储户填写的存款单或取款单由业务员键入系统,假如是存款则系统记存款单或取款单由业务员键入系统,假如是存款则系统记录存款人姓名、住址录存款人姓名、住址(或电话号码或电话号码)、身份证号码、存款类、身份证号码、存款类型、存款日期、到期日期、利率及密码型、存款日期、到期日期、利率及密码(可选可选)等信息,并等信息,并印出存单给储户;假如是取款而且存款时留有密码,则系印出存单给储户;假如是取款而且存款时留有密码,则系统首先核对储户密码,若密码正确或存款时未留密码,则统首先核对储户密码,若密码正确或存款时未留密码,则系统计算利息并印出利息清单给储户。系统计算利息并印出利息清单给储户。请用数据流图描绘本系统的功能,并用实体请用数据流图描绘本系统的功能,并用实体-联系图描绘联系图描绘系统中的数据对象。系统中的数据对象。作业及解答(第3章)3作业及解答(第3章)储户银行储蓄系统储户存款单取款单存单利息清单45lER模型模型本问题中共有两类实体,分别是本问题中共有两类实体,分别是“储户储户”和和“储蓄所储蓄所”,在它们之间存在在它们之间存在“存取款存取款”关系。因为一位储户可以在多关系。因为一位储户可以在多家储蓄所存取款,一家储蓄所拥有多位储户,所以家储蓄所存取款,一家储蓄所拥有多位储户,所以“存取存取款款”是多对多(是多对多(M:N)关系。)关系。储户的属性主要有储户的属性主要有姓名、住址、电话号码和身份证号码姓名、住址、电话号码和身份证号码,储蓄所的属性主要是储蓄所的属性主要是名称、地址和电话号码名称、地址和电话号码,而,而数额、类数额、类型、到期日期、利率和密码型、到期日期、利率和密码则是则是关系类型存取款关系类型存取款的属性。的属性。作业及解答(第3章)6作业及解答(第3章)7作业及解答(第3章)l2.为便利旅客,某航空公司拟开发一个机票预定系统。旅为便利旅客,某航空公司拟开发一个机票预定系统。旅行社把预订机票的旅客信息(姓名、性别行社把预订机票的旅客信息(姓名、性别等)输入进该等)输入进该系统,系统为旅客支配航班,印出取票通知和账单,旅客系统,系统为旅客支配航班,印出取票通知和账单,旅客在飞机起飞的前一天凭取票通知和账单交款取票,系统核在飞机起飞的前一天凭取票通知和账单交款取票,系统核对无误即印出机票给旅客。对无误即印出机票给旅客。旅旅客客旅旅行行社社机票预订机票预订系统系统预订信息预订信息取票通知取票通知账单账单取票通知取票通知账单账单/票款票款机票机票8作业及解答(第3章)9作业及解答(第3章)10作业及解答(第3章)11ER模型模型12l5.复印机的工作过程大致如下:未接到复印吩咐时处于闲复印机的工作过程大致如下:未接到复印吩咐时处于闲置状态,一旦接到复印吩咐则进入复印状态,完成一个复置状态,一旦接到复印吩咐则进入复印状态,完成一个复印吩咐规定的工作后又回到闲置状态,等待下一个复印吩印吩咐规定的工作后又回到闲置状态,等待下一个复印吩咐;假如执行复印吩咐时发觉没纸,则进入缺纸状态,发咐;假如执行复印吩咐时发觉没纸,则进入缺纸状态,发出警告,等待装纸,装满纸后进入闲置状态,准备接收复出警告,等待装纸,装满纸后进入闲置状态,准备接收复印吩咐;假如复印时发生卡纸故障,则进入卡纸状态,发印吩咐;假如复印时发生卡纸故障,则进入卡纸状态,发出警告等待修理人员来解除故障,故障解除后回到闲置状出警告等待修理人员来解除故障,故障解除后回到闲置状态。态。l请用状态转换图描绘复印机的行为。请用状态转换图描绘复印机的行为。作业及解答(第3章)13l从问题陈述可知,复印机的状态主要有从问题陈述可知,复印机的状态主要有“闲置闲置”、“复印复印”、“缺纸缺纸”和和“卡纸卡纸”。引起状态转换的事务主要是。引起状态转换的事务主要是“复印吩咐复印吩咐”、“完成复印吩咐完成复印吩咐”、“发觉缺纸发觉缺纸”、“装满装满纸纸”、“发生卡纸故障发生卡纸故障”和和“解除了卡纸故障解除了卡纸故障”。作业及解答(第3章)14作业及解答(第4章)15补充:请将下图的补充:请将下图的DFD转换为软件结构图。转换为软件结构图。(注:图中注:图中 表示或者表示或者)16补充:请将下图的补充:请将下图的DFD转换为软件结构图。转换为软件结构图。(注:图中注:图中 表示或者表示或者)17补充:请将下图的补充:请将下图的DFD转换为软件结构图。转换为软件结构图。(注:图中注:图中 表示或者表示或者)187.用面对数据流的方法设计下列系统的软件结构用面对数据流的方法设计下列系统的软件结构(1)储蓄系统)储蓄系统作业及解答(第4章)1920作业及解答(第5章)21不能是两个分开的子系统,是相同的前台单个处理不能是两个分开的子系统,是相同的前台单个处理22不能是两个分开的子系统,是相同的前台单个处理不能是两个分开的子系统,是相同的前台单个处理23(2)机票预定系统)机票预定系统为了便利旅客,某航空公司拟开发一个机票预定系为了便利旅客,某航空公司拟开发一个机票预定系统。旅行社把预定机票的旅客信息(姓名、性别、统。旅行社把预定机票的旅客信息(姓名、性别、工作单位、身份证号码、旅行时间、旅行目的地等)工作单位、身份证号码、旅行时间、旅行目的地等)输入该系统,系统为旅客支配航班,旅客在飞机起输入该系统,系统为旅客支配航班,旅客在飞机起飞前一天凭取票通知和账单交款取票,系统核对无飞前一天凭取票通知和账单交款取票,系统核对无误即印出机票给顾客误即印出机票给顾客24作业及解答(第5章)25作业及解答(第5章)26作业及解答(第5章)27可以是两个子系统,可以是两个子系统,预定和取票是不同的预定和取票是不同的处理方式(后台批量处理方式(后台批量和前台单个)和前台单个)282914.l令令P代表交易的总金额,代表交易的总金额,Q代表每股的售价,代表每股的售价,n代表交易的代表交易的股数。股数。l(1)表示手续费计算方法的判定表如图所示。表示手续费计算方法的判定表如图所示。l判定表的每一列是一条计算规则。例如,第判定表的每一列是一条计算规则。例如,第1列列(规则规则1)规规定,当交易总金额定,当交易总金额P少于少于1000元,且每股售价元,且每股售价Q低于低于14元,元,且交易的股数且交易的股数n是是100的倍数时,给经纪人的手续费为的倍数时,给经纪人的手续费为l(l+0.05)0.084Pl第第16列列(规则规则16)表明,当交易总金额表明,当交易总金额P超过超过10000元,且元,且每股售价每股售价Q在在14元到元到25元之间,且交易的股数元之间,且交易的股数n不是不是100的倍数时,手续费为的倍数时,手续费为l(1+0.06)(0.04P+134)l(2)表示手续费计算方法的判定树如图所示。表示手续费计算方法的判定树如图所示。作业及解答(第4章)30作业及解答(第7章)31作业及解答(第7章)32STARTINPUT(A,B,C)/判定表达式判定表达式1IFA5THENX=10ELSEX=1ENDIF/判定表达式判定表达式2IFB10THENY=20ELSEY=2ENDIF习题解答(第习题解答(第5 5章)章)/判定表达式判定表达式3IFC15THENZ=30ELSEZ=3ENDIFPRINT(X,Y,Z)STOP4.(3)设计下列伪码程序的语句覆盖和路径覆盖测试用例:设计下列伪码程序的语句覆盖和路径覆盖测试用例:33序序号号判定判定输入输入预期的预期的输出输出123A B C X Y Z1FF F1111232TTT204060102030语句覆盖的测试用例语句覆盖的测试用例 习题解答(第习题解答(第7 7章)章)34序号序号判定判定输入输入预期的输出预期的输出123ABCXYZ1FF F1111232FF T116012303FTF140112034FTT14060120305TF F201110236TFT20160102307TTF20401102038TTT204060102030路径覆盖的测试用例路径覆盖的测试用例 习题解答(第习题解答(第7 7章)章)35补充:补充:PleasefindoutonebasispathssetforthefunctiondepictedinC+asfollowusingthebasispathmethod.floatex(floata,floatb)floatx=0;if(a=3|b2)x=a*b;if(a2&b=0)x+=a-3;elsex+=b;returnx;36(1)画出程序流图)画出程序流图37(2)求出困难度:程序流图中共有)求出困难度:程序流图中共有5个圈个圈(3)找出一组基本路径集)找出一组基本路径集1)1-2-4-5-8-92)1-2-3-5-8-93)1-2-3-4-5-8-94)1-2-3-4-5-6-8-95)1-2-3-4-5-6-7-938l4.4.设计无人自动售货机系统对象、动态及功能模型设计无人自动售货机系统对象、动态及功能模型l售货时,顾客将硬币投入机器投币口,机器检查硬币售货时,顾客将硬币投入机器投币口,机器检查硬币的大小、重量、厚度及边缘类型。有效币种是的大小、重量、厚度及边缘类型。有效币种是1 1元、元、五角、一角,其它货币被认为是假币。机器拒收假币,五角、一角,其它货币被认为是假币。机器拒收假币,并将其退币口退出。当机器接收了有效硬币之后,就并将其退币口退出。当机器接收了有效硬币之后,就将硬币送入硬币贮存期中。顾客支付的货币依据硬币将硬币送入硬币贮存期中。顾客支付的货币依据硬币的面值进行累加。的面值进行累加。l机器装有货物安排器。每个货物安排器中零个或多个机器装有货物安排器。每个货物安排器中零个或多个价值相同的货物,顾客支付的货币值不小于该货物的价值相同的货物,顾客支付的货币值不小于该货物的价格,货物将被安排货物传送孔送给顾客,并将适当价格,货物将被安排货物传送孔送给顾客,并将适当的零钱返回到退币孔。假如安排器是空的,顾客支付的零钱返回到退币孔。假如安排器是空的,顾客支付的货币值相等的硬币将被送回退币孔。假如顾客支付的货币值相等的硬币将被送回退币孔。假如顾客支付的货币值小于所选择安排器中货物的价格,机器将等的货币值小于所选择安排器中货物的价格,机器将等待顾客投进更多的硬币。假如顾客确定不买所选择的待顾客投进更多的硬币。假如顾客确定不买所选择的货物,顾客放进的货币将从退币孔退出。货物,顾客放进的货币将从退币孔退出。作业及解答(第7章)39l建立对象模型如下:建立对象模型如下:顾客顾客顾客编号顾客编号总金额总金额所选货物所选货物硬币硬币大小大小重量重量厚度厚度边缘类型边缘类型硬币面值硬币面值硬币储藏器硬币储藏器自动售货机自动售货机投入投入送入送入货物货物货物编号货物编号货物名称货物名称货物价格货物价格货物数量货物数量货物分配器货物分配器分配器编号分配器编号售出货物名称售出货物名称售出货物数量售出货物数量MN包含于包含于40l动态模型如下:动态模型如下:自动售货机类的状态图自动售货机类的状态图待机待机检查检查硬币硬币累计投累计投币额币额选择货物选择货物退出退出硬币硬币检查付款检查付款检查存货检查存货分配货物分配货物投币投币提示金额提示金额不足不足提示重新提示重新选择选择真币真币伪币伪币输入货号输入货号不足不足足额足额有货有货无货无货等待超时等待超时不买不买不买不买投币投币41作业及解答(第10章)1.下图是某项目的工程网络图:下图是某项目的工程网络图:421-2是建立支配,是建立支配,2-4是编程,是编程,4-8是测试代码,是测试代码,8-10是是测试系统,测试系统,1-3是购买硬件,是购买硬件,3-5是安装,是安装,5-7是撰写手册,是撰写手册,5-6是转化,是转化,7-9是培训,是培训,9-10是用户测试。是用户测试。(1)画出完整的工程网络图画出完整的工程网络图(标出标出EET,LET,和每个作业的,和每个作业的机动时间机动时间);(2)找出关键路径及完成该项目的最短时间;找出关键路径及完成该项目的最短时间;(3)从节约人力的角度,画出该项目的从节约人力的角度,画出该项目的GANTT图。图。2.什么软件配置管理?什么是基线?什么软件配置管理?什么是基线?3.软件困难性(规模)的度量方法有那些?软件困难性(规模)的度量方法有那些?4.软件质量与质量保证的含义?软件质量与质量保证的含义?5.简述简述CMM模型的含义、等级划分及其作用。模型的含义、等级划分及其作用。