201671030114 马秀丽 实验四 软件工程结对项目

源代码
项目 内容
课程名称: 2016级计算机科学与工程学院软件工程(西北师范大学)
课程要求: 实验四 软件工程结对项目
课程目的: 熟悉软件开发总体流程,提高自身能力
做业意义: 第一次体验一个完整的工程

任务一:

两两自由结对,对结对方的《实验二 软件工程我的项目》的项目成果进行评价。
评价同窗
源代码
评价:总体排版清晰,基本上实现了要求功能,可是所画柱状图不能看出效果,没有输出到文本的结果显示,代码写的还能够,命名挺规范,在java方面要在多熟悉、练习,那么应用起来结果会好不少。

结对同窗html

任务2:

采用两人合做方式,设计开发一个英文文本统计分析软件。

功能设计

1.实验2要求的功能;
2.单词频数可视化柱状图要求是如下样式:

3.统计该文本行数及字符数;
4.各类统计功能均提供计时功能,显示程序统计所消耗时间(单位:ms);
5.可处理任意用户导入的任意英文文本;
6.人机交互界面要求GUI界面(WEB页面、APP页面均可);
7.附加分功能:统计文本中除冠词、代词、介词以外的高频词;java

设计实现

1.StatisticalWord()函数,统计指定单词词频个数且显示柱状图;
2.WordList()函数,统计词频个数并输出到文本;
3.Figure()函数,查询K个出现频次最高的单词;
4.Test()函数,统计文本的行数和字符统计数;
5.WordList1()函数,统计文本中除冠词、代词、介词以外的单词输出到文本
6.Main()函数,调用各个功能。git

结果展现

1.按按钮调用相应功能
github

2统计指定单词词频个数且显示柱状图
app

3.统计词频个数并输出到文本
函数

4.查询K个出现频次最高的单词
学习

5.统计文本的行数和字符统计数
测试

6.统计文本中除冠词、代词、介词以外的单词输出到文本
编码

合做中
设计

代码展现

监听按钮调用相应函数

{
Button1.addActionListener(new ActionListener()
{
public void actionPerformed(ActionEvent event)
{
StatisticalWord frame = new StatisticalWord();
//frame.setBounds(200,300,500,800);
frame.setTitle("统计指定单词词频个数且显示柱状图");
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setVisible(true);
optStatisticalWord();
}
});
add(Panel,BorderLayout.CENTER);
pack();
}

统计各功能时间

{
long startTime=System.currentTimeMillis();
long lines = Files.lines(Paths.get(new File("src\DATA.txt").getPath())).count();
// System.out.println("行数: " + lines);
long endTime=System.currentTimeMillis();
result.append("字符统计结果为:" + n+"\n行数: " + lines+"\n所消耗时间为:"+ (endTime-startTime)+"ms" );
//System.out.println("所消耗时间为:"+ (endTime-startTime)+"ms" );
}

统计数字或者字符出现的次数

public static int Pross(String str) { 

    char[] charArray = str.toCharArray(); 
    int all = 0;
    TreeMap<Character, Integer> tm = new TreeMap<Character, Integer>(); 
    for (int x = 0; x < charArray.length; x++)
    { 
        if (!tm.containsKey(charArray[x])) 
        { 
            tm.put(charArray[x], 1); 
        } 
        else
        { 
            int count = tm.get(charArray[x]) + 1; 
            tm.put(charArray[x], count); 
            all=all+count;
        } 
      
    }  
    return all;
}

总结:

此次做业是在实验二的基础上进行的,首先咱们根据实验二的我的PSP作了分析并在开发和编写代码上增长了时间,在开始开发设计以前咱们读了对方的代码并选择了此次做业以对方的代码为基础,由于她的代码命名比较规范,完成过程当中会遇到各类各样的问题,双方之间的调解和适当的妥协是颇有必要的。

psp

PSP2.1 任务内容 计划共完成须要的时间(min) 实际完成须要的时间(min)
Planning 计划 15 20
Estimate 估计这个任务须要多少时间,并规划大体工做步骤 18 15
Development 开发 480 620
Analysis 需求分析 (包括学习新技术 20 18
Design Spec 生成设计文档 20 35
Design Review 设计复审 (和同事审核设计文档 10 25
Coding Standard 代码规范 (为目前的开发制定合适的规范) 10 8
Design 具体设计 15 19
Coding 具体编码 400 600
Code Review 代码复审 20 25
Test 测试(自我测试,修改代码,提交修改 20 47
Reporting 报告 15 27
Test Report 测试报告 10 12
Size Measurement 计算工做量 4 5
Postmortem & Process Improvement Plan 过后总结 ,并提出过程改进计划 5 8
相关文章
相关标签/搜索