title | Xiekai Yu (24,222) and into Xiang (24110) twinning operations |
---|---|
GitHub project address | https://github.com/Amelia1313/PairProgramming.git |
Partners work address | https://www.cnblogs.com/amelia13/p/11616191.html |
A, PSP table
Personal Software Process Stages | Estimated time consuming | The actual time-consuming |
---|---|---|
plan | 0.5hour | 0.5hour |
• Estimate how much time this task requires | 0.5hour | 0.5hour |
Develop | 12hour | 6hour |
· Needs analysis (including learning new technologies) | 6hour | 6hour |
Generate design documents | 3hour | 2hour |
· Design Review (and his colleagues reviewed the design documents) | 1hour | 1hour |
· Code specifications (development of appropriate norms for the current development) | 1hour | 1hour |
· Specific design | 1.5hour | 1hour |
· Specific coding | 6hour | 5hour |
· Code Review | 1hour | 0.5hour |
· Test (self-test, modify the code, submit modifications) | 1.5hour | 1hour |
report | 1hour | 1.5hour |
· testing report | 0.5hour | 0.5hour |
· Computing workload | 1hour | 0.5hour |
· Hindsight, and propose process improvement plan | 1.5hour | 1hour |
total | 38hour | 28hour |
Second, the design coding
1. Ideas
Because of the ability to now only go for help, the first overall read through the side of the teacher's code to see the teacher's ideas, and then to find c # book to learn before learning, then according to their own understanding of the program from a teacher code renovation plus add their own stuff. Our window interface is for the skin, the first step is to carry out the main loading personnel, carried out by a generic collection, build a data source to import the data collection, and then have the data source in the data to form. The back is designed roll call buttons, start and end. I designed a button at the end of his new ideas, you can ask whether the absences, and then recorded. The project has five classes (in the back of the form design classes include)
2. Code
Specific code has
such a basic data entry personnel,
this is the rear window inside the program. Other more pictures will not pay more demonstrated, specific upload code.
Third, code review
In the code review, we are watching each other's parts, and some parts we have done, and then see what is wrong with each other, choose the best method. I review twinning time partner, also we found some problems, some of the code partner are duplicated, and my somewhat is repeated, then and order some of our code written backwards, which then leads to meaning is completely different. It may cause some screen some content with their opposite result. There is, as we write some function or meaning of content is not the same thing with all of these issues pairing is found and resolved.
Fourth, unit testing
Unit testing is a function of the function to take the test in these libraries in these classes, and in fact there is not much. We can test for most of the function, and can also extract only one of the two or content to be tested. It also used the assertion to determine the value of two is not the same. Specific code and the results are as follows, and a unit test code coverage have been run. The following figure shows the test results:
The figure is a test case coverage: From the chart we can see our test code coverage reached over 90%, I think this is a good test results.
V. Conclusion of the process
This is a picture of our twinning process:
Six additional features
Additional features is actually a small feature, named after the random, plus asked if absenteeism and absenteeism for teachers to determine whether, and the absence of people recorded. Of course, due to limited capacity, there may be some places is still not perfect, hope behind can make something better. Here is the code and display the results show:
Seven summary
The pair programming I want to forget this term should never forget, I will never forget because of the position of two code written backwards, how to run without success, and has been sitting in front of a computer think, noon meal I am almost did not eat, really want the brain burst. Although it is thought very painful, but this is not no gain, at least experiment next time I will not make the same mistake again. And when I have to think of before and after the code are linked, so that I have something for half the solution is no longer confused. Through this experiment my programming ability has been greatly improved, although it may not be very powerful, but for me it must be before the leap, I learned a lot.