Some experiences on Project Management

Source: Internet
Author: User

Some experiences on Project Management
During this period, I have been responsible for the management and development of a project. In the worst case of short time and tight tasks, and most of the team members are inexperienced cainiao, I lead nearly 40 teams, finally, the product is delivered as scheduled within the time range specified by the customer. In this case, the project was still successful due to many problems such as demand changes and personnel changes (nearly 10 people left the team due to other tasks, however, some experiences and lessons can be shared with you.

Project development

Requirement

The project should focus on its needs. Whether a project is successful or not, the requirement must be accurate to 60% of the success factors. No matter how successful the system architecture design and team management are, if there is a demand deviation, it is still the same. Due to the particularity of the EAS project, it is critical to successfully establish effective and fast communication channels with the customer during the project development process.

The requirement must be confirmed by the customer. The user requirement statement and Software Requirement Specification obtained after requirement investigation and analysis must be signed and confirmed by the customer. The validation includes the project objectives, scope, and functional points (Use Cases) required by the project ). The EAS project did not pay enough attention to the demand in the early stage, resulting in some deviations in the requirement understanding, thus affecting the project progress. Fortunately, it was corrected in a timely manner. With the assistance of the Project Management Department, all requests were signed and confirmed by the customer or customer representative. Therefore, the project is fully guaranteed during customer acceptance.

The project should establish specialized demand analysts. The company does not have a dedicated demand analyst, but it cannot be said that it is a major drawback of staffing. From the development process of the EAS project, we fully realized the seriousness of this problem. The customer has not signed the confirmation because we do not have a dedicated demand analyst with rich experience. Common developers often encounter deviations or misunderstandings when investigating requirements and writing requirement specification documents. Software Requirement analysis is an important and responsible technology. Without a specially trained demand analyst, it usually brings risks to the project.

The project should designate the requirement contact persons for each module. Only in this way can the project team communicate with customers in a timely manner and quickly respond to customer requests and feedback. The EAS project promptly established the requirement contact person in the early stage of development, avoiding the risks brought to the project by the demand change to a certain extent. However, the established requirement contact has not been systematically trained. In the process of requirement research and communication with the customer, the performance can only be said to be unsatisfactory.

Maintain requirement survey records and requirement tracking tables. This job is not doing well enough. Because the demand research personnel are not professional enough, the project manager and the demand analysis personnel do not pay enough attention to this process, and there is no good tool or process to monitor this process, this makes the demand survey records not play a greater role. In addition, Demand Tracking is also very important. After all, the requirements of any project are not fixed and will change at any time, the requirements implemented by developers may also be different from those of customers.

Maintain the requirement matrix. The project manager does not pay enough attention to and understand this content, and the project development process system also lacks a good requirement matrix document template. However, in the middle and late stages of the project, the project promptly wrote the EAS project requirement function list, and communicated and negotiated with the customer based on the delivery version, thus avoiding the risk of demand deviation.

Control demand changes. Pay attention to the role of CCB, and establish a response mechanism for demand changes. The EAS project team is not timely enough to respond to demand changes. The project manager and the project management team must take some responsibilities.

Design

Focus on architecture design. To some extent, the success of the EAS project stems from the fact that we have an excellent framework development team, and at the beginning of the project establishment, we have basically determined the architecture of the entire system. Although some changes have occurred, the core architecture remains unchanged. Because we have established a stable and simple system framework, which can greatly improve the development efficiency and avoid repeated coding of the framework.

Be good at making trade-offs on design. The three elements of project development are cost, quality, and progress. To ensure the quality, the EAS project team did not emphasize the technology too much, especially when considering the progress. Although this poses a certain risk to the system's later maintenance, it can effectively ensure the progress of the project. From the perspective of the initial architecture design of EAS, we introduced Castle and AOP, trying to simplify the implementation of ORM and cross-cutting concerns such as logging, exceptions, permissions, transactions, and other functions. At the same time, we hope to use WCF to build loosely coupled service-oriented applications using SOA.Program. However, as the customer's requirements change, we resolutely gave up the concept of using WCF, overcame technical difficulties, and persisted in the use of Castle and AOP, to this end, a framework development team was set up. Facts have proved that we have made the right decision on the technical choice.

Pay attention to UI prototype design. The system's prototype design and Requirement Analysis complement each other. If a good prototype version is delivered to the customer, the customer can better understand the implementation of the system and promote the effectiveness and accuracy of communication. In the EAS project, we established the prototype design team from the very beginning and started the prototype design at the demand analysis stage. This practice has undoubtedly played a major role in customer communication, requirement confirmation, and uidesign. However, due to the lack of dedicated uidesigners, this work still has many defects, even the UI design has brought great obstacles to the delivery of iterative versions. In the later stage of the project, the most bugs are about the UI. Therefore, we believe that when developing similar web applications, we should establish uidesign specifications as soon as possible to constrain all uidesign. At the same time, a dedicated UI Designer must be trained to complete the UI interaction design as soon as the prototype design starts. In addition, a dedicated uidesign team must be set up to cooperate with demand analysts in the demand stage and with developers in the coding stage.

Test

Test members should understand the requirements. If you do not understand the requirements, the tester cannot write the correct test cases. During the test, the tester may incorrectly understand the requirements, resulting in reports of incorrect bugs, affecting the efficiency of developers.

Strengthen cooperation between developers and testers. Developers must respond to bugs submitted by testers in a timely manner. Testers should also track the bug fixes by developers.

At the beginning of the test, you must determine the testing principles and classify the severity of bugs. At the same time, you must determine the priority level for fixing bugs.

Project Management

Progress Management

The premise of ensuring that the project progress is not significantly different is to develop a good project plan. The entire project plan must be considered based on the project scale, members, technical difficulty, and other aspects. If the deadline of the project has been determined, some methods must be used to ensure the completion of the project plan. First, select the software development lifecycle that conforms to the project. Generally, waterfall development is not recommended. The best way is to use RUP or agile development, and then work out the Project Plan in combination with the original method. This avoids the risks arising from demand changes.

Second, we need to track the progress of the project on a daily basis. You can learn about the project progress through the morning meeting, weekly meeting, project daily report, and project weekly report. At the same time, you need to designate a progress tracker for each group, and determine whether the actual progress is different from the plan based on the daily reports of each group leader.
Develop methods to cope with project progress deviations. Once there is a deviation in the project progress, the corresponding error must be taken to solve the problem. You can also respond promptly by working overtime, increasing manpower, and applying for project progress.

Report the project progress to the project members in a timely manner. Only by keeping project members informed of the current status of the project can they put more pressure on each member and avoid being relaxed. At the same time, it also enables each member to have a goal without losing his or her mind.

When preparing a project plan, you must consider the time for phase review and peer review. This is not well done in the EAS project. The reason is that the project progress is tight.

Note: maintain the project progress tracking table and the project progress deviation tracking table. The project management department and QA can grasp the project progress in a timely manner, facilitating the management of the project progress.

Change management

Changes include requirement changes and personnel changes. If they are not controlled, both of them will have disastrous consequences for the project's progress. Demand changes have been described earlier, and the EAS project also finds that the personnel changes are very serious. Therefore, we will focus on the management of personnel changes.

If a person enters the project, it usually has a good impact on the project. But we must also pay attention to how to integrate new members into the team more quickly. In general, if new members are required to join the project, the best time for a change is the early stage of the project. If you join a new member in the middle and late stages of the project, it will undoubtedly mean that the project has disastrous consequences. The new members are not familiar with the project, and the impact on the new Members is limited. If the relationship between new and old members is not well handled, it will bring a negative impact.

The exit of personnel is often uncontrollable, and the impact on the project is immeasurable. To minimize these impacts, coding specifications must be established at the beginning of the project. At the same time, efforts should be made to maintain and update documents. When a person leaves, the handover must be completed. Meanwhile, such changes should be evaluated reasonably, reported to the Project Management Department in a timely manner, and communicated with the customer in a timely manner. If there is a serious impact on the project progress, we should try our best to get the customer's understanding and submit a project extension application.

Risk Management

It is unrealistic to consider all possible risks in the project at the beginning of the project. However, we must consider risk management, especially when developing a project plan and creating a team. There are many risks, including demand risks, progress risks, quality risks, and technical risks. A complete set of risk management plans must be developed. In the event of any risk, relevant personnel must be organized to resolve the risk in a timely manner. You cannot ignore any small risk. Otherwise, a small risk will eventually cause a major disaster. Risk control must be checked by the Project Manager and System Architect.

Member Management

UNUnited project teams cannot guarantee the success of the project. When managing a team member, the project manager and the project team lead must always pay attention to the member status. Even if the team conflicts and friction occur, the team spirit can be implemented to the maximum extent at any time.

It is important to continuously ensure the morale of project members. Every time a project makes a progress, all Members must be informed so that confidence in success can be gained. Pay attention to work-and-rest in the project development process. Mandatory overtime can only reduce the efficiency of project members. If some activities can be carried out properly during the project, the team members will undoubtedly feel the collective atmosphere of the project team. At an important moment of implementation, the project manager must motivate the project team members through words and languages. The confidence of the project manager is also a key to ensuring the morale of members.

Be sure to understand the psychological and working status of team members. In addition to individual abilities, a good leader is also crucial. Therefore, you must select the appropriate project leader to master the progress of the entire project team. At the same time, we also need to understand the capabilities of each member to arrange appropriate roles and positions.

Focus on the cooperation between development and testing teams and project management teams. The project team is a whole, with different roles for each member, but everyone is an important member of the team.

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.