Analysis on the introduction of project management thinking in R&D center

Analysis on the introduction of project management thinking into R&D center

Catalogue :
1. Analysis of current situation and reasons
2. Project management thinking
3. Long-term goals: process, standardization and institutionalization
4. Short-term goals and specific measures


1. Analysis of current situation and reasons
Current From my limited perspective, the R&D center can observe the problems as follows:
1. The product quality is difficult to guarantee
Why is it difficult to guarantee? Take the network management version that was recently completed at the end of May and was originally planned to be released on June 11 as an example. Today I checked the bugfree system, and there are still 37 unresolved issues, including many fatal and serious issues. , and these questions were not raised in the last week. With so many unresolved versions, how can the quality be guaranteed? How can you go out with confidence?

I think there are two reasons for this phenomenon:
First, no one is specifically looking at the issue, and no one is there to promote the cause analysis and resolution of the issue.
Second, there is a lack of process or system guarantees. Maybe some processes have been formulated before, including point review, etc., but they have not been implemented. If there is a process to guarantee it, the version with so many problem tickets (note: it is also possible that the problem is solved but no ticket is issued) will never be passed.

Quality problems are also manifested in other aspects. For example, some basic functions still have problems when they are submitted to Zhang San. These can also be seen from Zhang San's test report, and the reasons will not be discussed further.
2. The development progress is not guaranteed and no one is tracking
Let me give an example. Zhang San asked in his email on 6.11: Is that all the log files? I asked for the second time in the email on 6.12, but no one responded to the email. Let me talk about it: providing the log export function should be the function to be delivered at the end of May determined at the April meeting. This function involves me, A and C, and what I can export now is my part of the log. Specifically, why the logs of the two parts of A and C are not exported, it seems that the interface between them is not well defined, I am not sure about the specifics. However, the functions that are so obviously missing are not recognized or promoted to be completed. This reflects our inadequacy in arranging and tracking development progress.
3. The development plan is not
reasonable The formulation of the development plan should be a very rigorous thing. At what point in time, products with what functions are provided should be carefully measured according to market conditions and internal R&D capabilities. These involve the balance of priorities in many specific matters and an accurate assessment of the capabilities of the current R&D team. The current development plan, which simply uses a natural month as a milestone, is obviously unscientific, because the realization of some large functional items cannot be guaranteed to be completed within a one-month cycle.
4. The development rhythm does not conform to the objective laws The issue of
development rhythm is currently one week as a small iteration. In fact, this is not suitable for our current R&D team. This rhythm is actually very demanding on the development team. Today I saw an introduction about the Wandoujia development team. It took them half a year to gradually run from a one-month iteration to a two-week or one-week rhythm. Running 1000 meters at a speed of 100 meters is obviously unsustainable and causes a lot of problems. Just like the weekly iteration version on June 9 was not released last week, it is still the version released on the branch in May.
5. Lack of identification of various technical risks and lack of countermeasures
Risks throughout the development process involve many aspects. What I can see so far are: For example, in the current network management architecture design, the main logic and concurrency pressure are concentrated on the management layer (the part that A is responsible for), and this part is completely written by ourselves, while Without the help of some mature framework, this is a big risk, this risk is system level, and maybe not obvious in the case of small scale equipment. In addition, the introduction of NoSQL mongodb for storage and abandoning the use of mysql that has been used in the project before is not necessarily an immediate problem, but it is actually a risk. There are other technical decisions that are not necessarily problematic, but may cause problems, including cost increases and schedule delays. In conventional IT project practice, the general technical strategy is to be conservative and avoid unforeseen risks.

The above are some of the problems I have seen, some of which may not be analyzed correctly, but various problems definitely exist. The general reason for these problems, I think, is the lack of a sound system and mature process to standardize and ensure the entire process of product development. At present, many specific things are made by people to make temporary decisions, which belongs to the primary stage of research and development. The second is the lack of relatively professional people to take full-time responsibility for specific things, that is, the lack of implementation and supervision and control of the process.

2. Project Management Thinking
Project management currently has special departments and project management majors in many colleges and universities, such as Tsinghua University, which has a special project management research institute (the vice president of the institute taught us lessons). That said, project management is a specialized discipline that also covers many areas of knowledge. In many projects at home and abroad, there are special project managers to control the whole project, such as the Three Gorges Project in China. The words in the project management book are 47 specific activities including ten knowledge areas (including integration, quality, risk, cost, stakeholders, etc.) and five processes.
As far as our company is concerned, the approach that is in line with the current status quo is to introduce project management thinking, and partially adopt specific activities in project management, rather than copying it completely. And then in the specific implementation process and then continue to improve, optimize and increase or decrease. That is to say, in the whole project cycle, even if the specific measures required in project management (such as cost estimation, earned value analysis, etc.) are not introduced, the concept of project management should be used to think and do things. The narrow and specific description of project management thinking, I think, is to define the rules that everyone must abide by at each stage of the project, and to continuously monitor, measure and correct in each stage of the project process, and finally achieve the project goal. Different projects have different scenarios, and the actual situation may vary widely, but the core idea of ​​project management is the same. As long as the project management thinking is established and possessed, it can be used flexibly in different projects. At the same time, the experience, lessons and norms formed in different projects can also form organizational process assets, which can be used for reference and reference to other projects.


3. Long-term goals: process, standardization, and institutionalization. I think the long-term goal of
introducing project management thinking is to make the entire R&D process have rules to follow, and each R&D activity has a system to constrain and standardize, creating a Soft power at the company level can also train a coordinated, efficient and mature R&D team. These are long-term goals, and even some visions, but I don't want to describe them too much, but the goals and directions I think should be like this.

4.
Near I think the short-term goal is to provide solutions and ideas for the problems that have been discovered at present, and after analyzing and refining the problems, draw inferences from one case and give common solutions, so as to form norms and system. Let's talk about some measures that I think should be implemented at present:
1. Implement software product outsourcing standards and procedures. If there is no standard before, formulate a standard, and if there is no previous process, formulate a process. If there is one before, implement it to the person and promote the specific implementation (refer to the point review).
2. Improve the quality assurance system represented by the problem list. At present, the quality of products is mainly reflected by the number and severity of problem lists. Therefore, promoting the solution, accountability and root cause analysis of problem lists is a basic means to ensure quality at present. In addition, it is best to establish a reward and punishment mechanism related to the problem order (for example, a serious single deduction of 10 yuan as a fruit fund, etc.). At present, it is also possible to make a daily statistical report of a set of problem lists, which includes a summary of the problem lists of various severity on each person's head. For controversial issues, it is best to establish a CCB (Change Control Board)-like panel to adjudicate. For the test bill of lading, it is best to standardize (for example, fatal and serious orders must be confirmed with the test manager) and establish a reward mechanism.
3. Make a reasonable development plan The
development plan cannot be just a simple time schedule plan for when to realize what function. The development plan should be approved by the project stakeholders, including the R&D team, the testing team, and the marketing staff. The development plan should fully consider the requirements in the market and the strength of the R&D team.
The development plan must be executable, and the development plan must include contingency reserve time for known and unknown risks.
4. A sound and more intuitive project progress display and reporting mechanism It is
best to make the project progress more clearly visible, such as introducing Gantt charts in other project management tools, so that the project progress can be readily available to all stakeholders, including the leadership. Visible and clearly identifiable. The other advantage of doing this is that it is also possible to clearly see who is ahead and who is behind, and can specifically analyze the reasons for timely adjustment and improvement.
5. Adjust the development rhythm and strengthen unit testing.
At present a practical problem is that few unit tests are submitted to the testing department after the functions are developed. We know that the earlier a problem is discovered, the better, and the less expensive it is to fix. So in addition to arranging a certain amount of time in the development plan for joint debugging and unit testing, I think it is also a way to arrange for members of the development team to take turns to do unit testing.

For more specific measures, I don't want to continue to enumerate them. I think we will find more improvement points based on the guiding principles of project management and our current status and problems. Various situations in the project will appear, and many of them need to be analyzed and flexibly dealt with on the basis of following the project management thinking.

In short, I think it is very necessary and beneficial to introduce the concept of project management in the R&D center and set up full-time roles and positions to improve the overall R&D capability of the company.

Guess you like

Origin http://10.200.1.11:23101/article/api/json?id=326555138&siteId=291194637