A review of the Alpha stage of the real boxing project -- Shi jinhao

Source: Internet
Author: User

After more than a month of hard work, our team finally released the alpha version of the real man on time in 1/14. According to the plan, this week summarizes the lessons learned during the past period to prepare for the upcoming beta phase. Looking back at the past more than a month, we have gone through the whole process of Alpha development from the plan stage to the gradual downgrade, initially experienced formal software development. In this process, we have gained a lot and gained good experience and lessons. After discussion by the members in today's software engineering class, we have summarized some important points. Let's talk about the lesson first.

  • Be pragmatic in the planning stage
    When we first came up with this game, we were completely confused. For example, we automatically extracted the parts of users' pictures and combined them into various character models, for example, what strange tricks and special effects can be used to spoof a game after it is ready. In the plan phase of the first week, everyone talked about this and did not really consider its implementation issues. It is technically not feasible. What kind of requirements do users have, the problem cannot be solved within two months. After entering the coding stage, I found that it is not easy to implement the basic functions of two people. I need to write a small game engine from the beginning. After a while, I found that the workload was quite large, so I changed the original picture of the user's whole body to only the user's profile picture, and put it in the beta stage for implementation, in fact, it is much inferior to our previous expectations. This lesson tells us that after determining what to do, we must contact technical details as soon as possible, consider the implementation difficulty, and make a proper choice. We cannot just stay in the brainstorming stage. Otherwise, it is very likely that it will be technically unavailable during the implementation phase, and the progress will be delayed.
  • Allocate important tasks
    There are three of our Dev, and there are a lot of them, but let's look back at what we wrote.CodeIt is conservatively estimated that more than 2/3 of them are written in one Dev, which brings great troubles to project management. On the one hand, Dev complained that I did most of my jobs and it was under a lot of pressure. On the other hand, the other two Dev jobs were also very wronged. There was nothing to do but to read other people's code. This also brings a lot of risks to the project, because the important code is written in Dev, which means to put all the eggs in a basket. If the dev group is busy someday or for other reasons, no coding, the progress of the entire project will be delayed, and others can only be worried. Therefore, modular programming is very important. Dev with strong coding capabilities can be used as a Dev master to coordinate the entire coding work.ProgramIt is divided into various modules and allocated to each Dev so that each Dev can actively participate in the process to get rid of the code writing by one person and the code reading by others.
  • Timely communication between team members
    This is mainly a lesson learned from an accident. One time, a Dev was asked to describe the conversion status of characters and moves. At that time, it was not very clear about what we expected to output, so Dev described the transition state in text according to his own understanding. I will show it to you the next day during scrum, but you actually expect a clearer description of the state transition diagram, rather than text descriptions. Although the completion of the text description is of great help to draw a state conversion chart, it is a little different after all. If this Dev was able to figure out what was unclear at the time, this would not happen. The communication between the members is not limited to daily scrum. If there is anything unclear, it is necessary to communicate in a timely manner. Otherwise, it is very likely that I am out of track, wasting my energy, this has greatly dampened enthusiasm.

Of course, there are a lot of lessons to learn. On the other hand, we still have some experiences when we can release Alpha on time and basically implement the expected functions.

    • decomposition goal-carbon feeding and icing on the cake in the snow
      As the saying goes, a stuttering cannot be a fat man. When we realized at the coding stage that this game was not as simple as we thought, we promptly adjusted our strategy and analyzed what was important and basic functions (in the snow ), what are optional, less-core functions (icing on the cake), and then focus on implementing the core and basic functions in the Alpa stage. We can release the alpha version on time to achieve basic two-person matching functions, thanks to the rational decomposition of the goal. Imagine that if we wanted to fight against two people at the time, but we wanted to implement cool special effects, user customization, and so on, we could not do anything until now, it's hard to get something that can be deliver out.
    • clear division of labor
      A typical software project team has a PM, dev and test roles, which we set at the beginning. However, it was found that, because we were playing games, we needed a lot of design work, such as the style of the characters, the shooting and processing of photos, and so on, it was hard to be attributed to the functions of the above three roles. So we set up two other designers for the design work. In this way, the division of labor is clearer and efficiency is easily improved.

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.