作业五:结对项目-四则运算 “软件”之升级版

这个作业的要求来自于:https://edu.cnblogs.com/campus/gzcc/GZCC-16SE2/homework/2232

结对成员:陈淇舒 201606110108

同伴的博客地址:https://www.cnblogs.com/fulanjiang/p/9847802.html

同伴的远程github地址(源代码)为:https://github.com/Chenqishu/cqs

调试环境:IntelliJ IDEA 


 一、需求分析

  • 程序基本要求

    1.从个人项目出发,将程序改造成一个单机带用户界面(不是控制台)的程序,这个程序最基本要达到:

    2.自动生成题目,单个题目最多不能超过4个运算符,操作数小于100。

    3.用户可以输入答案

    4.若用户输入答案正确,则提示正确;若答案错误,则提示错误,并要提示正确答案是多少。

  • 扩展方向(已实现)

    1.用户答题结束以后,程序可以显示用户答题所用的时间

    2.用户可以选择出题的个数(最多不能超过5个题目),答题结束可以显示用户答错的题目个数和答对的题目个数

    3.程序可以出单个整数阶乘的题目:如:4!=24

    4.程序可以设置皮肤功能,可以改变界面的颜色即可。

二、结对过程

  • 编程分工

    本人——林永浩:负责编码扩充以下两个方向,负责界面设计:

      用户答题结束以后,程序可以显示用户答题所用的时间。

      程序可以设置皮肤功能,可以改变界面的颜色即可。

    同伴——陈淇舒:负责编码扩充以下两个方向,实现代码整合:

      用户可以选择出题的个数(最多不能超过5个题目),答题结束可以显示用户答错的题目个数和答对的题目个数。

      程序可以出单个整数阶乘的题目:如:4!=24。

  • 详细设计(附部分源代码)

   计时功能实现的部分代码如下:

public void run() {                                                                                                 //  完成时间计时
        int second = 0;
        int minute = 0;
        String time;
        timeLabel.setText("用时 00:00");                                                                               // 初始化用时
        while (true) {
            try {
                Thread.sleep(1000);                                                                               //  按时间设置
            } catch (InterruptedException e) {
                e.printStackTrace();
            }
            second++;
            if (second == 60) {
                second = 0;
                minute++;
            }
            if (minute < 10) {
                time = "用时 " + "0" + minute + ":";
            } else {
                time = "用时 " + minute + ":";
            }
            if (second < 10) {
                time = time + "0" + second;
            } else {
                time = time + second;
            }
            timeLabel.setText(time);
        }
    }
  • 运行截图

    开始界面,用户做任何操作前

    

    用户输入的题目数是1-5之内,点击开始的时候,正常显示运算题目,计时开始:

    

    用户点击交卷,计时结束,并在侧边显示用户做对了多少道题,而做错的题目输出正确的答案:

    

    当用户点击界面左上边的“背景”按钮的时候,弹出调色器,改变题目显示区域的颜色:

    

    

    当用户输入的题目超过5这个数,输入框上面的提示框便会显示“题目数应该在1-5之内”的提示信息:

    

三、收获总结

  在结对学习的过程中,学会了分工与合作,相比个人完成项目,更多的是要考虑同伴的感受,只有这样才能更好完美的完成项目。这次的项目总的来说还有可以提升的空间,有时间的话后期会继续改进的。

四、过程耗时估计与时间统计表

PSP2.1 Personal Software Process Stages Time Senior Student Time
Planning 计划 8 6
· Estimate 估计这个任务需要多少时间 12 10
Development 开发 90 85
· Analysis 需求分析 (包括学习新技术) 8 10
· Design Spec 生成设计文档 0 0
· Design Review 设计复审 3 5
· Coding Standard 代码规范 4 3
· Design 具体设计 10 13
· Coding 具体编码 35 30
· Code Review 代码复审 10 9
· Test 测试(自我测试,修改代码,提交修改) 15 30
Reporting 报告 9 6
· 测试报告 0 0
· 计算工作量 5 2
· 并提出过程改进计划 0 0

五、结对学习过程照片

 

原文地址:https://www.cnblogs.com/linxiLYH/p/9857802.html