2017-2018-20172309 "Java Programming" course pair programming Exercises _ arithmetic
Team member: Shansha
Study No.: 20172310
Blog Address: Click here
1. Demand Analysis:
- can generate the topic:
-Enter the number of topics you want to generate and output a set of topics at random levels.
-Operator stochastic equal probabilities (subtraction), arithmetic random probabilities (integers, true fractions).
- Judgment System:
-The user enters the answer, and the computer generates the correct answer.
-The correct rate of answer is given after the answer is completed.
- About true Scores
-The operands contain true fractions.
-Algorithms that contain true fractions and practice fractions in the results of the operation.
- About expanding
-including the award (not realized), the weight (not realized) are in the back of the expansion completed.
-We also write part of the code, so we will only do our best to make it more difficult to expand, and do it with a clear conscience.
2. Code quality, code-out efficiency:
- Write the explanation of the code, especially the purpose of this code.
- The code is beautiful. Use the If-else tone must be aligned accordingly.
- Code specification
3. Design ideas:
- A class that generates fractions.
- A class generates an expression.
- A class converts an expression into a suffix expression.
- A class calculates the correct answer.
- Main function to implement related functions.
One figure solves all: the operand contains fractions, integers
4. Problems encountered:
- Issue 1: When the score is generated, the resulting scores are the same. For example: 1/2+1/2+1/2 =
- Workaround: This problem occurs because each time an expression is generated, the method that calls the score is used only once. So we should call this method again every time we use this method.
- Problem two: Postfix expressions sometimes have an error:
The correct answer should be 5/87 11÷2/67 57÷+
-Workaround: Not solved temporarily
5. UML Class Diagram: 6. Psp:
PSP2.1 |
Personal software Process Stages |
Estimated time-consuming (hours) |
actual time elapsed (hours) |
Planning |
Plan |
1 |
5/6 |
Estimate |
Estimate how long this task will take |
0.5 |
|
Development |
Development |
16 |
|
Analysis |
Demand analysis (including learning new technologies) |
4 |
|
Coding Standard |
Code specification (to develop appropriate specifications for current development) |
0.5 |
0.5 |
Design UML |
Design Project UML class diagram |
1 |
|
Coding |
Specific code |
18 |
|
Code Review |
Code review |
2 |
|
Test |
Test (self-test, modify code, commit changes) |
2 |
|
Size Measurement |
Calculation effort (actual time) |
0.5 |
|
Postmortem & Process Improvement Plan |
Summarize afterwards and propose process improvement plan |
3 |
|
|
Total |
48.5 |
|
7. Peer Reviews:
- Small sister very diligent, work out of the first two days began to urge me to prepare ~ ~ ~
- Code implementation is very powerful, it should be the depth of the usual kung fu.
- In order to make my pig teammate understand, every piece of code has a detailed comment.
- Of course, nobody is perfect. Teammates still have some drawbacks: each class variable does not describe encapsulation and does not like writing constructors.
- Cooperation Evaluation:
I still have some problems with my teammates, and of course the responsibility is mostly with me. For example: Because I do not have strong hands, encountered this project do not know how to do, resulting in this project slow progress, all rely on teammates fly. In addition, I think our early discussion and preparation also have some problems, such as in the early days did not fully understand the project, at least I did not! Because of the recent time I have not been able to arrange, feel overwhelmed, can not devote themselves to this project. Finally, give your teammates a point! I give him 98 points, I'm two!
2017-2018-20172309 "Java Programming" course pair programming Exercises _ arithmetic