Poor software engineering-mentor and graduate Development Model

Source: Internet
Author: User
At the length of the road, I explained a lot of examples of failed projects during the study.

Why is it that our project is always so hard to work, and many seemingly simple projects often get lost, it seems that the project that is progressing very quickly cannot be completed at the end of the day, programmers are so exhausted in response to frequent customer changes. The original code is too lazy to read. modifying a BUG leads to a few new bugs. (ADD) A feature may only have a few lines of code. Why does it take a few hours to publish and launch a feature? After the launch, many bugs may even be found one year later. These problems have been bothering me, after some project practices, I began to summarize and reflect on it. I read many books and tried to find the answer, including the Mythical man-month, The way programmers practice, test-driven development, eXtreme Programming, design patterns, etc. These software engineering books clearly answered these questions and greatly enriched my horizons.

First, we do not have a stable development team in our development. For graduate students, the development priority is not the highest. They are often forced to pull out of development scenarios due to courses, papers, or other work. Some graduate students are even fooling their tutors, this is fatal for projects.

Second, the rights and obligations of the project have been very good since the very beginning, and few people are willing to work for uncertain prospects. This problem is very simple in the company. I am going to get this item out of my salary, and I will pass the acceptance of the Quality Assurance personnel. This is not the case here. The cost of project development is generally given by the mentor later, developers do not know anything about this, and naturally they lack passion. If the mentor is involved in the design and development of the project, it's okay for the graduate student to do the work only. If the tutor has a considerable personality charm, graduate students who are willing to study are still willing to work. The mentor himself is also QA and can review the development results of graduate students. However, most mentors are delegated and all the tasks are handed over to you. However, you don't know how much you can get, so many people just work with their own personality, if you do what you like, there is no QA here. The final result is naturally unknown. Even if you have aborted, it is no pity for graduate students because he has been trained.

Third, most graduate students do not have project experience, nor have they accumulated any experience in the past. Most of the Code is written in the form of painstaking efforts. They do not have to design or consider expansion. They often do not understand it later, lack of habit of organizing things. For example, a complex Applet is used in the project. After the Applet is written in java, a digital signature is required. If the working mode of the applet changes, you also need to update some other things. In other words, if the user requirement changes and the applet code and working mode change, although it may only work for a few lines of code, however, the developer must re-sign and update some other things (assuming that the developer is a newbie, he even forgets how to sign the last time, this time he must go to the documents again. The pain of repetitive work is self-evident for programmers). After re-compiling signatures and updating related things, it may take a lot of time. "How is the change so troublesome ?". In fact, this is just a simple issue of automatic project construction. You just need to extract all the repetitive tasks and let the computer do it. But a newbie, it is often stuck in the pain of the past.

Fourth, weak testing and quality assurance. Testing should play a very important role in project development. The development of mentors and graduate students has weakened this stage. I will not go into details here, but there is no professional testing, A year later, we will find that the BUG is nothing new. In addition, the Quality Assurance mentioned above lacks the supervision on software quality at ordinary times, and all the problems come one after another on the day of interaction. It is not surprising that the project is delayed.

There are too many problems to be solved for successful development of tutors and graduate students. In addition to the above, the Training Mode of computer graduate students is also worth pondering.

Related Article

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.