EE308 Lab4

lyh05161114 2021-10-15 00:27:58
The Link Your Class
The Link of Requirement of This Assignment
The Aim of This Assignmentimplements the Bobing software prototype
MU STU ID and FZU STU ID19103905_831901122
MU STU ID and FZU STU ID (Teammate)19104171_831901301
Link of Teammate's BLOG

PSP Form

Personal Software Process StagesEstimated time(minsReal Time(mins)
Design Spec4060
Design Review150160
Coding Standard2020
Code Review100150
Test Report4560
Postmortem & Process Improvement Plan3030

GitHub Repository and the Link of the display video

For the complete code: Joker-gr09/Lab-4 (
For the display video :

We use Modao to complete Lab3 design. After determining the direction of Lab4, we quickly determined the direction of software design by asking predecessors and inquiring information. We decided to use wechat mini program to accomplish this task. Because wechat small program is not only convenient and fast do not need to download, and suitable for us this kind of novice operation.


The key of function difficult
Key function

1、Local game feature, able to roll 6 dice and get results automatically.

2、Multiplayer game function, several people in the same room to throw the dice respectively, when it is their turn to throw the dice, the system to determine the result of each person.


  1. When the user shakes the phone, the app randomly generates six dice. Their final positions, the number of dice on the die, and the rotation Angle of the die are all random. Most importantly, they will be animated on the screen. Therefore, we build a function to generate the above random data, and then use the generated random data to create the animation data and set the animation effects.

  2. After the player rolls the dice, the soft armor automatically gives the result of the game. The logical conditions for determining the outcome of a game are very complex, and we put a lot of constraints on it before we finally realize it.

Programming thinking
Judgment of results

There are 12+1 kinds of cases that need to be decided according to the rules of bo pie game:

Four fours plus two dots

6 at 4 o 'clock

Six little

6 same points (except one and four)

There are five and only five four's

5 equal points (except 4 points) + any different points

There are four and only four

One, two, three, four, five, six

There are three and only three four's

4 equal points (except 4 points) + any 2 different points

There are two and only two four points

There is one and only one four

In addition to the above are not winning

Because the determination of the number of points is based on the number of types of dice, six variables are first defined to count the points of six types, and then judge the results based on the number of types of points, and assign values to result. Create a context string group, and enter 13 results, using the value of result corresponding to the position of the result in the array. Write a message prompt popover, popover content is the result of the decision.



Pair programming experience.
This is our second group programming task. After the last pair collaboration, we have more confidence in pair programming and the division of labor is clearer than the last confusion. However, this time we met many difficulties. The biggest difficulty was that we had to learn new knowledge about software products and programming languages ourselves, such as front-end and back-end application development. Because we never learned it, we spent a lot of time on the project asking questions and learning independently. Although we met many difficulties in our study, we still gained a lot. We learned the micro channel small program development, I believe that our future work has a great help. After this event, we have a preliminary understanding of the operation of the "wechat developer" tool, know the general process of developing a small program with it, also learned its basic steps for picture operation.


Promote the improvement of myself involved in the project, a pair of programmers can learn something new while working. I organized my thoughts by constantly speaking them out. Verbal communication made us familiar with the modules, the development process became more interesting, and we had a lot of communication and a much better relationship. Higher quality code is done. Programs are less bug-prone, and the code is more elegant and compact. Pair programming forces programmers to work more efficiently. When I encounter difficulties, I may not immediately actively solve the problem, then I may surf the Internet to chat with friends, look at irrelevant websites and so on. Most of the day may be lost because of interruptions. But pair programming has a mutual urging effect on us, when one side of the work is tired and bad, the other side will play a role of encouraging and stimulating morale. And two people share a computer, slightly personal chat activities will be very conscious not to carry on. Feeling inexplicable on a lot of tired, efficiency is also high.

I have never been in touch with small program development before, so I suddenly had to learn a lot of knowledge temporarily, but there are still many problems in doing it. I made a leaderboard and historical records before, but finally I gave up because OF my lack of ability to achieve the desired aesthetic effect, and finally I deleted this code, which is a pity.

I have learned components and interfaces, understood product requirements, and understood how to design, but in specific development, it is still difficult to promote the implementation of the code.

291 点赞 收藏 回复



福州大学 梅努斯国际工程学院 软件工程 教学
2021-10-15 00:27