博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
结对编程2
阅读量:5818 次
发布时间:2019-06-18

本文共 3471 字,大约阅读时间需要 11 分钟。

一、问题描述:

    构造程序,分别是:

      •不能触发Fault。
      •触发Fault,但是不能触发Error。
      •触发Error,但是不能产生Failure。
 
二、结对说明:
      结对对象:叶银芳    博客地址:http://home.cnblogs.com/u/linuoxin/
      双方贡献:1:1
      编程照片:
      
三、源代码:
     采用语言:java
 
1 package com.yyf; 2   3 import java.util.Scanner; 4   5 public class Software { 6     public static final int COUNT = 3; 7   8     public static void main(String[] args) { 9         // TODO Auto-generated method stub10  11  12             double result = 0, sum = 0;13             int num;14  15             Scanner in = new Scanner(System.in);16  17             System.out.print("请问要求几个平均数:num=");18             num = in.nextInt();19             double array[] = null;20             array = new double[num];21             /*22              * 输入数值23              */24             System.out.println("请输入具体数值:");25             for (int i = 0; i < num; i++) {26                 System.out.print("array[" + i + "]=");27                 array[i] = in.nextDouble();28  29             }30             if (array.length <= COUNT) {
// 不触发fault31 System.out.print("计算过程:sum=" );32 for (int i = 0; i < array.length; i++) {33 sum += array[i];34 System.out.print(array[i]+"+");35 }36 result = sum / array.length;37 38 } else {
// 有fault39 System.out.print("计算过程:sum=" );40 for (int i = 1; i < array.length; i++) {41 42 sum += array[i];43 System.out.print(array[i]+"+");44 }45 if(array[0]!=0){46 result=sum/(num-1);47 }else{48 result = sum / array.length;49 }50 }51 System.out.println("所求平均值为:" + result);52 in.close();53 }54 55 }

四、存在Fault代码:

1                 System.out.print("计算过程:sum=" ); 2                 for (int i = 1; i < array.length; i++) {//说明:如果是用数组存储输入的数据,并求其平均值,应该是从说组下标0开始计算 3                       4                     sum += array[i]; 5                     System.out.print(array[i]+"+"); 6                 } 7                 if(array[0]!=0){ 8                     result=sum/(num-1); 9                 }else{10                     result = sum / array.length;11                 }

五、测试用例:

    •1. 存在fault,但是不能触发Fault。

    

if (array.length <= COUNT) {// 不触发fault                System.out.print("计算过程:sum=" );                for (int i = 0; i < array.length; i++) {                    sum += array[i];                    System.out.print(array[i]+"+");                }                result = sum / array.length;
 

    •2.触发Fault,但是不能触发Error。

    

System.out.print("计算过程:sum=" );                for (int i = 1; i < array.length; i++) {                                        sum += array[i];                    System.out.print(array[i]+"+");                }

    •3.触发Error,但是不能产生Failure。

    

六、总结: 

    这次结对项目是构造程序,通过程序的编写完成对error,fault,failure的认识,在写程序之初,我们对这几个概念进行了学习,然后设计了求平均数的题目,编写了以上程序,有了之前结对编程的经验,虽然这次换了一个结对对象,但进入状态还是要快一些,我的队友是一个很有耐心,思维活跃的人,在结对过程中,我们也有不同的看法,但很快在我们的分析讨论中也迎刃而解了。其实,我们这次的程序写得不是很完善,可能是因为我们对上面三个概念的理解也不是很深刻,了解很片面,在最后的结果分析中我们也认识到了这点,所以我们会在以后的编程练习中进一步学习这些知识。

    学习进度条:

点滴成就

学习时间

新编写代码行数

博客量(篇)

学到的知识点

第一周

2h

0

0

了解认识软件工程

第二周

2h

0

1

了解软件工程思想

第三周

2h

0

1

制作并进行问卷调查

第四周

4h

100

1

需求分析与结对编程

第五周

4h

240

0

Java的学习

第六周

3h

0

0

初步学习“软件测试”

第七周

4h

178

1

软件系统设计、结对编程

第八周

6h

55

1

软件测试、结对编程对fault、error、failure的认识

 

 

转载于:https://www.cnblogs.com/ciciCassie/p/5406948.html

你可能感兴趣的文章
ios11文件夹
查看>>
【HLOJ 559】好朋友的题
查看>>
Electric Fence(皮克定理)
查看>>
【状压DP】【UVA11825】 Hackers' Crackdown
查看>>
nvl 在mysql中如何处理
查看>>
MyEclipse 快捷键
查看>>
快速傅里叶变换FFT
查看>>
大数据常用基本算法
查看>>
JavaScript学习笔记(十三)——生成器(generator)
查看>>
hibernate保存失败
查看>>
MySQL增量订阅&消费组件Canal POC
查看>>
Sqlite多线程
查看>>
数据结构-时间复杂度
查看>>
对象与字符串相互转换
查看>>
[NOIp2017提高组]小凯的疑惑
查看>>
《C程序设计语言》练习1-5
查看>>
$\frac{dy}{dx}$ 是什么意思?
查看>>
Go开发之路(目录)
查看>>
RHEL6.5安装成功ORACLE11GR2之后,编写PROC程序出错解决方法
查看>>
(50)与magento集成
查看>>