Note: This is a secret document that I submitted to the leaders. According to the agreement, I have the right to make public outside of the company after hiding the project name. In fact, this document does not contain any project features except the project name. This is true for the original ellipsis in the text, rather than deleting the section.
XXXX Project Management Objectives
1
XXXX Project has been launched and ......, This project is ...... Right ...... It is of great significance in ...... Under the correct leadership ...... All comrades ...... Hard work ...... Not afraid of sacrifice ...... In-depth implementation ...... Three ...... 8x8 X ......, Get ...... Major achievements ...... Get ...... Economic benefits ...... Social benefits ...... Double harvest of spiritual civilization and economic construction (warm applause )!
Some management and technical problems are also exposed during project development and construction. Considering the future product upgrade and provincial promotion, these problems will have a greater impact on the smooth development of the work, we believe it is necessary to strengthen project management, improve management methods, and standardize the development process.
2. Attitudes
Attitude determines everything
-- Miluticich (the only coach who leads the Chinese National Men's football team into the World Cup finals)
This article does not intend to discuss the great significance of the victory of the Long March, nor the great role played by the women's volleyball spirit in social life, nor the relationship between the rapidly growing GDP and the global energy crisis. This article only discusses the existing problems and expected goals of the XXXX Project and the technologies involved in achieving the Goals.
Note: This article will not talk about any achievements we have made and the sweat we have paid. This article will only discuss existing problems, if you open an incorrect file, close the file and delete it. (Tip: press Ctrl to delete the file without going through the recycle bin ).
Although this article is all about problems, no one should be accused. In all fairness (Microsoft may be wrong when the word is recommended for the micro-soft Pinyin input method ......), We did not do well enough, but it was not bad enough. At least we can see that many projects around us are doing worse than us, and some are doing better than us. We also need to consider political factors. We are affected by more political factors than others by the nature of our enterprise. In a difficult political environment, we may have room for improvement.
In any case, recognizing the problem is the first step in solving the problem.
3. problem points
3.1 Project Process Management Problems
1. The project progress is unclear and there is a final launch date, but there is a lack of (verifiable) stage objectives.
2. There is a lack of effective Task Arrangement, and the work intensity fluctuates within the range of 0% (completely idle) and 400% (neither eating nor sleeping nor finishing on time.
3. Insufficient quarrel. The lack of discussion and review at the design stage makes it difficult to correct design defects discovered during the integration stage.
4. There is no valid document. The document is not for follow-up work, but for dealing with customers (customers prefer to be fooled? This is a political issue ).
5. A sub-system changes the interface and fails to effectively notify other sub-systems.
3.2 Configuration Management Problems
1. CVs becomes a decoration, and some people do not put anything.
2. CVs becomes a waste of garbage. Some people put everything up.
3. The source code is not controlled. If multiple users share a copy, it is not subject to CVS.
4. newly written code is overwritten by errors when synchronizing data to different servers. It can only be overwritten. (Some people are depressed and want to commit suicide)
3.3 Resource Management Problems
1. Key table data is cleared by mistake, and you cannot know who did it. You can only run the program again.
2. There are more and more spam in the system, and no one can claim it, And they dare not delete it.
3. Due to insufficient space, some people delete others' items without authorization.
4. Suspect that key programs are running at will.
5. suspected that the key process was manually terminated.
6. You can create tables without permission.
7. It is too cumbersome to create a table when the table creation permission is restricted.
3.4 software design and coding problems
1. The coding is not standard. The programming style ranges from 58 years to 99 years, and the naming rules are missing.
2. Too much manual work and a lack of support programs. When you want to query multiple tables separately, you need an auxiliary program, such as a view or stored procedure.
3. the system lacks the overall design, and the independent design methods of the old system are continued to a large extent. For example, batch or batch.
4. The frontend and backend are disconnected. The frontend is always developed based on the data model. If the frontend is incorrect, the frontend must follow the business model.
5. Implement the subsystem before discussing system integration. Foreseeable consequences.
6. Lack of test, lack of management, and testing is too casual.
3.5 communication and collaboration
1. If the two use different methods to correct the same configuration, the result is still wrong.
2. Insufficient information sharing. Some people may develop small functions that have been developed by others.
3. Insufficient knowledge sharing. Some people may be stuck with a problem for a whole day or even several days. Another person may know why.
3.6 Other problems
1. Legal issues: the source code copyright statements are basically written in a mess.
2. Make the girls stay up late.
4 goals
All the above problems are not isolated, and management investment is insufficient ...... Insufficient technical experience ...... Lack of formal training ...... Political issues ...... System problems ...... Attitude problems ...... Cultural issues ...... Historical problems ...... US-China relations ...... Moon Landing program ......
1. Enterprises are not a place for democracy
2. Top-down reforms
3. No one is involved. All automated management tools are nonsense.
4. History is a burden, and reform will always face the resistance of most people.
4.1 clarify the Project Management Mechanism
The Project Manager manages the project progress. The project is divided into several verifiable stages, and the completion of each stage must be effectively verified. Use a detailed task breakdown structure. The project manager is the manager of the project management team.
Important designs should be reviewed by the Project Manager, important disputes should be resolved at the review meeting, and the review conclusions should be made at the review meeting. It cannot be discussed. Participants of the review meeting should be expanded as much as possible. Prior to the review meeting, there should be several small discussion meetings.
The Project Manager (instructs the team owner to develop and summarize the Group Development specifications) to develop the project development specifications. The development of each group is subject to the Project Development specifications and cannot be changed at will. The Project Manager supervises the implementation of project development specifications.
A version control system administrator, a Unix administrator, and an oracle administrator are required.
It is said that it takes 18 months to increase the cost by 0.5 million US dollars from the level 1 to the level 2 ......
4.2 clarify the responsibilities of the group owner
The team leader is responsible for the project manager, arranges the team work plan, verifies the team work progress, and checks the team work output. The team leader should have a clear understanding of all modules, designs, and outputs of the group, and have a general understanding of all the code.
Important designs should be discussed and reviewed to form formal documents. The team owner should review all outputs (including code, documents, data, etc.) of the team ).
4.3 explicitly use Version Control for configuration management
The configuration Administrator (SCM Engineer) manages all outputs of a project through the version control system, including but not limited to code, executable programs, database structures, Data, scripts, executable programs, documents, meeting notes, review reports, training materials, and important emails.
The version control system is the only way to obtain project files.
The SCM engineer re-examines whether the data of the version control system meets the requirements. Each file in the version control system should be described and files cannot be added at will, correctly differentiate valid and expired files.
Everyone must understand that what is in the version control system is recognized, and nothing is recognized before submission, to understand this, everyone must use an independent identity for development in an independent location and cannot share the same copy.
VSS is much easier to use than CVs, but it cannot access the windows network when DCN is connected. You can instruct the system group to solve this problem (theoretically this restriction should not be applied ).
The Samba service may also provide effective help. Samba is a UNIX service that can add Unix machines to a Windows network.
Oracle version control can be performed by exporting database scripts, which can be easily compared with version control software. In principle, the powerdesigner or Visio file is a design document and should not be used for version control. (I don't understand powerdesigner very well. Maybe I'm not right ......). Static data can also be controlled by exporting scripts or SQL * loader export files.
4.4 Resource Management Problems
The user identity must be correctly differentiated. Each user has a unique unix host user, an Oracle database user, a version control system user, and others. If you can unify these three + X, of course, the most ideal, at least Microsoft products can achieve.
UNIX host users can use the Group to obtain appropriate permissions and work in their home directories. The source code is from the version control system. This is easy and (theoretically) required.
Oracle database users can obtain appropriate resources through roles and the same name, and may need to write many management scripts. It is not my fault that Oracle is stupid ......
Generally, a version control system user can only have the right to submit, delete, and Add. The permission to destroy history can only be controlled by the Administrator.
No Password is allowed. Password theft must at least be jointly and severally liable.
4.5 design and coding problems
Use encoding specifications.
Unified naming conventions.
The names of all global names must be reviewed. The global name includes the module name, class name, global variable name, global function name, database table name, and process name in the code.
Enhance design. Discuss the design draft and review the design. Expand the scope of participation as much as possible (referred to as peer review at level 3 of CMPs ).
Participate in business at the front end. Design the front-end based on business needs.
You must have at least one document.
Improve the test.
4.6 communication and collaboration
Regular meetings. Understand each other's work and raise technical questions.
Information files that can be shared. The Public Libraries of the project must be documented.
4.7 Other problems
Legal issues are resolved by the Project Manager.
The project manager is responsible for handling overtime issues.
----------------------------------------------------------------------------
The technique of directly deleting a file is not to press Ctrl. I intentionally wrote an error. If you delete the report you want to submit to the President in the afternoon, I don't want you to shirk your responsibility to me.