欢迎来到三一文库! | 帮助中心 三一文库31doc.com 一个上传文档投稿赚钱的网站
三一文库
全部分类
  • 研究报告>
  • 工作总结>
  • 合同范本>
  • 心得体会>
  • 工作报告>
  • 党团相关>
  • 幼儿/小学教育>
  • 高等教育>
  • 经济/贸易/财会>
  • 建筑/环境>
  • 金融/证券>
  • 医学/心理学>
  • ImageVerifierCode 换一换
    首页 三一文库 > 资源分类 > DOCX文档下载  

    软件工程.docx

    • 资源ID:12261888       资源大小:658.93KB        全文页数:27页
    • 资源格式: DOCX        下载积分:6
    快捷下载 游客一键下载
    会员登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录 QQ登录   微博登录  
    二维码
    微信扫一扫登录
    下载资源需要6
    邮箱/手机:
    温馨提示:
    用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP免费专享
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    软件工程.docx

    . 华东交通大学软件学院 上机/实验报告册 专 业:软件工程 班 级:软件工程9班 姓 名:刘悦 学 号:2923 课程名称:软件工程 教 师:袁朝晖 学 期: 大二上 2016年12月20日实验一: 数据流图实验一、 实验目的通过绘制数据流图掌握数据流图的基本原理,并能对简单问题进行数据流图的分析,独立地完成数据流图的分析与设计。此外,学会使用Case工具完成数据流图和系统流程图的分析与实现。二、 实验内容实验内容如下:a) 用visio绘制出如下定货系统的SFD(系统流程图)的模型。图1 某定货系统SFDb) 用visio绘制教材中分别绘制出定货系统的DFD的顶层模型、第一层模型和第二层模型。(具体参考课本上P69P70的图3.4,图3.5和图3.6)c) 用visio 绘制如下图所示的取款手续的数据流图。图2 取款手续d) 请结合目前的银行柜台取款手续,对图2的取款数据流图进行改进,绘制当前银行柜台取款过程的顶层和第一层数据流图。三、 实验结果: 系统流程图基本物理元素绘制数据流之后得到完整的系统流程图(SFD) 顶层模型基本元素完整的顶层数据流图,如下图: 完整的顶层模型当前银行柜台取款过程的顶层数据流图:第一层数据流图:实验二: 软件设计实验一、实验目的学会使用Case工具完成描述软件结构的软件结构图和软件层次图的设计,并熟练地掌握几种常用的软件详细设计的工具,如程序流程图、盒图、PAD图和判定表,并能把给定的软件问题描述转化为过程设计结果。二、实验内容1、软件结构设计:(1) 采用visio绘制教材的图4.26中的软件结构图;(2) 采用visio绘制教材的图4.41的软件层次图。(3) 分析如下所示的数据流图,并把它转换成软件结构图,然后用visio把结果画出来。(注意,请用结构图)图1 某系统的数据流图2、软件的详细设计:某航空公司规定,乘客可以免费托运重量不超过20公斤的行李,当行李重量超过20公斤,对头等舱的国内乘客超重部分每公斤收费6元,对其他舱的国内乘客超重部分每公斤收费8元,对外国顾客超重部分每公斤收费比国内乘客多1.5倍,对残疾乘客超重部分每公斤收费比正常乘客少一半。实验包含三部分的内容:a) 用word设计描述其详细设计结果的PAD图、判定表。b) 用viso画出它的程序流程图,并计算它的Mccabe程序复杂度。(要求把计算过程写到实验报告中)3、 实验结果1、 (1). 采用visio绘制教材的图4.26中的软件结构图;实验包含三部分的内容: e) 用word设计描述其详细设计结果的PAD图、判定表。 f) 用viso画出它的程序流程图,并计算它的Mccabe程序复杂度。(要求把计算过程写到实验报告中)   三、实验结果 1、(1). 采用visio绘制教材的图4.26中的软件结构图;  (2) .采用visio绘制教材的图4.41的软件层次图(3) .分析如下所示的数据流图,并把它转换成软件结构图,然后用visio把结果画出来。2 PAD图 :判定表:程序流程图:计算Mccabe程序复杂度:步骤1:将程序流程图退化成有向图,将程序流程图的每个处理框退化成一个节点,将控制流箭头退化成连接各节点的有向弧。 步骤2:在有向图中,由程序出口到入口连接一条虚有向弧,使有向图达到强连通。 步骤3:计算V(G)=m-n+1 V(G)是有向图的G中的环数,m是有向图G中的弧数,n是有向图G中的节点数因此环形复杂度为:V(G)=17-13+5=9,所以McCabe程序复杂度为9。实验三: 软件测试实验一、实验目的学会使用CASE工具完成软件测试用例的设计以及初步完成对单元测试,深刻理解单元测试的基本原理及CASE工具的基本使用。二、实验内容1、单元测试的逻辑覆盖测试验证实验:运用Nunit工具完成对如下例子的单元测试,要求分别完成语句覆盖、判定覆盖、条件覆盖、判定条件覆盖、条件组合覆盖和路径覆盖测试的测试用例编写以及测试。要求首先按格式编写出该测试所需要的测试用例,然后编写测试程序,对其进行测试,最后把你写的测试用例按格式记录到实验报告中。测试用例的格式如下: 输入, 期望结果,对于本例请遵循如下格式: A,B,X,X(A>1) and (B=0)(A=2) or (X>1)X = X/AX = X+1TTFFabdce图1 单元测试逻辑覆盖的验证实验此外,请测试如下情况:(1). 如果将第1个判定中的“AND”错写成了“OR”,用数据2,0,3,2.5(首先,该组数据满足何种逻辑覆盖)对程序进行测试,可否发现错误?为什么?请先测试,然后把结论记录到实验报告中。(2). 如果将第2个判定中的“x>1”错写成了“x<=1”,则用数据2,0,3,2.5对程序进行测试,可否发现错误?为什么?请先测试,然后把结论记录到实验报告中。(3). 如果将第1个判定中的“AND”错写成了“OR”,则用数据3,0,1,1/3和2,1,2,3(首先,该组数据满足何种逻辑覆盖)对程序进行测试,可否发现错误?为什么?请先测试,然后把结论记录到实验报告中。(4). 如果将第2个判定中的“x>1”错写成了“x<=1”,则用数据3,0,1,1/3和2,1,2,3)对程序进行测试,可否发现错误?为什么?请先测试,然后把结论记录到实验报告中。(5). 如果将第2个判定中的“x>1”错写成了“x<=1”,则用数据2,0,3,2.5和1,1,1,1(首先,该组数据满足何种逻辑覆盖)对程序进行测试,可否发现错误?为什么?请先测试,然后把结论记录到实验报告中。(6). 如果将第1个判定中的“a>1”错写成了“a<=1”,且把“b=0”错写成了“b<>0”,则用数据2,1,1,2和1,0,2,3对程序进行测试,可否发现错误?为什么?请先测试,然后把结论记录到实验报告中。(7). 如果将第1个判定中的“a>1”错写成了“a<=1”,且把“b=0”错写成了“b<>0”,则用数据2,1,1,2、2,0,2,2、1,1,1,1和1,0,2,3对程序进行测试,可否发现错误?为什么?请先测试,然后把结论记录到实验报告中。2、循环结构测试现有一个简单循环,需要对其进行测试,其程序伪代码如下:Int i,a;Input(i,a);While(i<=10)a += 2; if(a>4) a *= 2; a += 3;Else If(a>1) a -= 4; else a += 5;i+;a *=4;Output(a);要求为该程序设计满足简单循环的所有测试用例,记录到实验报告中。3、等价类划分及边界值测试的验证实验:有如下算法A和B均是非负整型变量(注:int型),如果10<A<100,则B=A*20-5,如果0<A<=10,则B=A*15+20,如果A>=100,则B=A*100-200,请分别用等价类划分方法和边界值分析方法设计测试用例,然后编写测试程序完成测试。并把测试结论写入到实验报告中。三、实验结果:1、(1)语句覆盖: 不能发现错误,因为and比or要求的要严格一些,故and可以满足的数据or也一定可以满足。(2)不能发现错误,第二个判定or只要满足一个条件即可,因为A=2必然成立,故第二个条件一定为真,所以不能发现错误。(3) 语句覆盖和判定覆盖:第一组测试数据不能发现错误,因为第一组数据可以满足第一个判定的and判定,肯定可以通过or判定条件。而第二组测试数据可以发现错误,因为A=2,B=1,只有A满足条件而B不能满足条件,痛多AND返回0。又由于把and错写成了or,返回值为1,影响了X的值,所以能发现错误。(4)第一组测试数据能发现错误。经过第一个阿婆那段,执行c操作结果得到X=1/3,第二个判定条件是X<=1,判定成功返回值为1,进行e操作,最后得到结果X=4/3。与期望结果不同,系统想、提示错误,故能发现错误。第二组测试数据不能发现错误。他、因为第一个判定条件是B=0,而B实际值为1判定不成功,将进行操作b,进行第二个判定时,因为判定条件为A=2,此时X=2,故判定成功返回1,进行e操作,最后得结果X=3与期望结果相同,不能发现“x>1”错写成了“x<=1”。故不能发现错误。(5) 判定覆盖条件、语句覆盖、判定覆盖和条件覆盖 第一组测试数据不能发现错误,在第2个判定时,因为A = = 2正确,满足条件,进行e操作。最后x = 2.5,与期望结果相同。所以不能发现“x>1”错写成了“x<=1”对于第二组测试数据,因为对于第二个判定A=2,而A的实际值为1,此时后面的判定X>1或者X<=1对结果就有影响了,错写之后由于X=1,对于X<=1判定成立,返回1,影响X的值,故能发现错误。(6)第一组测试数据不能发现错误,因为原本执行路径是abe。出错后执行路径仍为abe,所以不能发现错误。第二组测试数据也不能发现错误,因为原本执行路径是abe。出错后执行路径仍为abe,所以也不能发现错误。(7)第一组测试数据不能发现错误,因为原本执行路径是abe。出错后执行路径仍为abe,所以不能发现错误。第二组测试数据可以发现错误,因为原本执行路径是ace。出错后执行路径仍为abe,所以能发现错误。第三组测试数据不能发现错误,因为原本执行路径是abd。出错后执行路径仍为acd,所以不能发现错误。第四组测试数据不能发现错误,因为原本执行路径是abe。出错后执行路径仍为abe,所以也不能发现错误。程序代码: #include<stdio.h> void main()    int A,B;  float X,Y;printf("请输入A,B,X:n");  scanf("%d%d%f",&A,&B,&X);  printf("请输入期望值Y:");  scanf("%f",&Y);if(A>1&&B=0)      X=X/A;   if(A=2|X>1) X=X+1;    else      if(A=2|X>1) X=X+1;   else  printf("输出X的值:");  printf("%f",X);       printf("输出X的值:");  printf("%fn",X);  循环结构程序:#include<iostream.h> void main()   int i,a;  cout<<"请输入i和a:"<<endl;cin>>i>>a;while(i<=10)   a=a+2;   if(a>4)       a=a*2;    a=a+3;    else       if(a>1)a=a-4;    else a=a+5;      i+;    a=a*4;  cout<<a<<endl;测试用例:(i,a)为(11,2)(1,5)(1,1)(1,-3)。3、 验证实验 的实验程序:#include<stdio.h> void main()   int A,B; printf("请输入A的值:");  scanf("%d",&A);  if(A>10&&A<100) B=20*A-5;  if(A>0&&A<=10) B=15*A+20;  if(A>=100) B=100*A-200;  printf("请输出B的值:");  printf("%dn",B); 输入条件的等价类划分:有效等价类测试用例:无效等价类测试用例边界值分析:     根据题意可以取:-1,0,1,9,10,11,99,100,101,102实验四: 软件动态模型建模实验一、 实验目的运用Visio和Powerdesigner等Case工具完成软件问题的时序图、状态图以及活动图的绘制,真正理解这些动态模型的含义,并能熟练的使用Case工具。二、 实验内容1、 Powerdesigner完成教材图3.15的状态图设计2、 Powerdesigner完成如下软件问题的状态图设计。复印机的工作流程大致如下:未接到复印命令时处于闲置状态,一旦接到复印命令后则进入复印状态,完成一个复印命令规定的工作后又回到闲置状态,等待下一个复印命令;如果执行复印命令时发现没有纸张,则进入缺纸状态,发出警告,等待装纸,装满纸后进入闲置状态,准备接受复印命令;如果复印时发生卡纸故障,则进入卡纸状态,发出警告,等待维修人员来排除故障,故障排除后回到闲置状态。3、 Powerdesigner完成如下所示的时序图设计图1 某系统时序图4、 完成如下用户身份验证功能的活动图设计:用户首先输入其个人信息,如果确认其输入则向系统提交用户信息,并在数据库中查询用户信息,比较用户信息,同时进行验证,验证通过,该用户获得授权可以进入系统的主界面,否则,验证失败重新回到输入用户信息界面。如果用户放弃输入,则结束程序。5、 综合题。综合运用所学OOA和OOD方法和技术完成教材P263习题8的第10题。三、 实验结果1、 图3.152、 打印机 3、 时序图 4、 用户身份验证功能活动图 5、 习题8.10;.

    注意事项

    本文(软件工程.docx)为本站会员(scccc)主动上传,三一文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知三一文库(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    经营许可证编号:宁ICP备18001539号-1

    三一文库
    收起
    展开