Some experiences in Software Project Development

Source: Internet
Author: User

In November of last year, I joined several other students to collect data from the water level gauge. When the project was taken over at the time, it was originally thought that it would not be too difficult, but now the project is going on today (2011.1.18), only to find that a lot of things are not what we take for granted. Let's just write something below, it's also a mid-term project experience.

 

1. A very important point in the implementation process of the project is the progress of the project. During the process of project promotion, I originally had a formal internship and the task was very tight, so for a while, I had to switch between two projects without stopping, and people were very tired. When customers or bosses on both sides rush, the only idea at that time was to have more time. So my conclusion is: if you are the leader of the project, you should take into account the professional expertise of the personnel when convening the developers, on the other hand, we also need to take into account the possible time risks of the project itself. Instead of finding a person with a tight schedule and strong professional knowledge, we 'd better find someone who can devote all his time to it.

 

2. During the implementation of the project, it is also troublesome to coordinate the progress of various parties. For example, in the water level gauge project, the original equipment used was the wireless module of enfora and the Water Level Sensor of Insitu, however, when the project is about to end, various problems are exposed. The wireless data collection method is unstable, and the specific Modbus protocol data collection has some inexplicable data deviations, considering the cost, the customer wants to change the device, and even if all the software is done, the device returns incorrect data.

For example, when DTU was not used as a wireless module, data collection was very unstable and the developed product was completely "pheasant; later, the customer needs to use a single-chip microcomputer as the node to connect the water level gauge and wireless module, so that they have to contact the customer with the appropriate Single-Chip Microcomputer Development Company, the basic hardware design and local lower computer software design are hosted on them, but the two sides need to coordinate the demand work. In fact, it is sometimes subtle: I always hope that I can complete my tasks smoothly and easily, throw potential risks to the other party, and finally take the money and leave. This psychological phenomenon is very common, this situation exists not only between teams, but also within the team.

My conclusion is that, as a developer, you should be brave enough to take responsibility and fulfill your obligations with confidence. It is not advisable to deliberately drag or deliberately push your responsibilities. However, in some special cases, it is still necessary to consider the interests of the team or the company.

 

3. What should I do if I encounter technical problems or do not know any problems?

1. Find someone who may know about this or has similar experience: when there was no data collection between the water level gauge and the wireless module, I was very decisive, when the problem is not found through the online data and device Data Manual (In addition, the device itself is a product imported from abroad, so it is difficult to obtain information from the Internet to solve the problem ), my idea is: Find someone with rich experience, and then find multiple teachers one day in a row, and finally find the potential of the problem.

2. If you are using products of other companies, you can contact the technical support staff of the other companies in a timely manner. In this case, they are willing to solve the problem, this means orders, benefits, and business for them. Just like this time when the wireless module was switched to the dtu cdma of Yi Tang, the data collection was always wrong. After two days of technical support staff's efforts, they finally found the crux of the problem, there is a problem with the wiring of the serial line of RS232-RS485 converter. In fact, the emergence of such problems can be avoided as follows: after the production of specific hardware is complete, designers should do a full test and try to solve the problem in the early stage, for software developers who do not know much about hardware, it is difficult to find the problem, which may take a long time. From this point, we can also say that a problem occurs. Many things in the project need to be completed in advance, and a certain amount of time should be set aside to cope with unexpected situations.

3. People are doing things. I think: how can we make others do things very willing or willing to do things for you through speeches, eyes, or actions, and be willing to continue helping you the next time, this kind of ability is very necessary, because in the project implementation process, one person alone cannot support the smooth completion of the entire project, and many problems and many people will be involved throughout the process. From developers to customers and suppliers. The project's head should be tough (time nodes should be strictly specified), and the dissatisfaction of the team should be well handled (the praise should be timely, so it is best to praise him in front of everyone, timely Payment, current interests ).

 

4. Last, many things are not solved by technology alone. Many non-technical reasons will affect us, customers, and suppliers. (Customers always want a short development cycle and low development costs; suppliers always want to use a large amount of resources and be sustainable; we always want smooth development and get money on time ...)

 

Okay, I 've talked so much about it. Let's talk about it next time ....

 

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.