background

Existing demand schedule management way more traditional, by maintaining a document, by the participants reflect on their progress, and the developer of a line up report consciousness often is not strong, the project manager wants to know the latest progress of demand, need oral questioning, and some students did not take responsibility needs the owner very well, When asked about the progress of the project, I would approach each participant. In this case, the risks of the project cannot be exposed as early as possible. In the promotion of key projects, major loopholes are easy to occur, and the delay will lead to the loss of the company’s interests. Project managers need to spend energy on asking progress, and front-line personnel are easy to forget to synchronize progress in documents after complicated business development work. In order to achieve progress synchronization, a large number of human resources are occupied virtually.

In addition to demand progress, the business side may temporarily insert an emergency demand, which requires the Team Leader (TL for short) to respond to the current manpower situation within the Team to determine whether resources need to be coordinated. However, the biggest problem of documenting demand progress is that the manpower situation cannot be directly reflected. To understand the manpower situation, TL has to first look at all the requirements being invested, and then ask the progress of each requirement, so as to figure out how much manpower can be released to undertake new requirements, which is very laborious. In my own experience, every time an emergency demand comes, it is very painful to be asked to provide the current available manpower, which also foreshadows a demand management system in the future.

Basically,

Since the provider of progress information is front-line development, and the project manager is mainly concerned about the progress, we will start from the perspective of front-line development and project manager respectively to see how to break through the current obstacles.

For front-line development, after business development, there is still a need to synchronize progress, which has no substantial progress for the completion of demand, but also costs manpower to fill in forms, which outweighs the loss. So if it’s very simple and you can do it with two clicks of a button, doesn’t that make it acceptable for front-line development?

For project managers don’t want to go to find the owner ask demand, also don’t want to wait for owner demand make progress clear after synchronization, just want to have a place can reflect the progress of each demand immediately, and can see the current demand in which stage, who is the head of the stage, can immediately one-on-one communication, to get rid of the obstacles the process.

In addition to front-line development and project managers, THE TL also needs to be aware of current manpower saturation when allocating requirements, so there needs to be a feature that allows the TL to see what requirements its team members are currently working on and when they can be released.

The analysis of each role want content, in fact, there is the most basic prototype of demand management system. But the developer’s perspective is limited, so use your ability to “hook up” with professional product managers and find a way to get them on board.

Looking for help

Think about how you can impress them before looking for reliable help. They will want to work on the project because it will improve them. What we were thinking about was that most of the products that we had were built a long time ago, and most of the product managers’ job was to build on it, and building a product from zero to one seemed like an attractive point. In addition, the initial promotion and landing of the product is also a highlight of our project. With these two highlights, we also successfully attracted two product students to join us.

In addition to the need for professional product students to participate, we also need some students who can set up the project. Similarly, we need to come up with some selling points for developers. For example, this is a full-stack project, so you can experience the process of building a Node project from scratch. In addition, the technology stack can directly use the latest version without considering the historical burden. Being able to use the latest version of third-party libraries and make back-end services by Node is very attractive to most front-end students, and we have also invited four capable partners to join our development team.

Product level planning

After the product was involved, the prototype design of the project was standardized.

We started talking to the product at a deeper level:

  • The ultimate value of the product is that it can reflect the progress of the requirements in a transparent way and be convenient enough in terms of usability. Determining the final value will help us make the right decision when we meet with multiple conflicts later

  • There are ready-made project management tools in the industry, and what are the irreplaceable features of our product that enable it to spread across the team

  • In designing such a tool, what are the main categories of objects that we are dealing with, which are producers and which are consumers for the tool

  • Before product promotion, focus should be placed on meeting the needs of which roles, and these roles should play an important role in product promotion

After several times of communication on product value and MVP version range, it is determined that MVP version mainly includes the following modules:

  • Personal center (easy to view and operate quickly)

  • Requirements pool (unified storage of requirements to support product entry requirements)

  • Gantt chart (view progress for each requirement, view manpower for each line of development)

  • Statistics (used to view project progress for a full week)

Back to technical landing Angle

Project planning

To start a new project from scratch, you must have an overall plan and be able to set milestones for each phase. Ensure the final integrity of the project by completing each milestone. In the form of backward, each milestone node is determined from the time point when the project is completed and launched, so that the progress of the project can be clearly controlled.

Technology selection

In addition to some planning of the project dimension, the selection of technology should be done well in the early stage. As it is an internally initiated project, it also wants to improve the ability of Node, so we plan to write the content of the back-end part by the front-end students themselves with Node. In terms of database, MySQL, which has been used in the company, is used. In terms of ORM, Sequelize, which is popular in the community, is also selected. In the front end, the React framework is also used.

External team collaboration

In addition, access to internal SSO login, domain name application, database instance docking with THE DBA and other transactions, it is also best to be well informed before starting to ensure the steady progress of the project.

Consider growth for developers

Assign tasks based on the characteristics of different students. For example, students who have no node experience can be assigned more Node-related tasks. Driven by themselves, they tend to be much more enthusiastic about the project. In addition, some challenging content can be assigned to the experienced students. After entering the development period, progress synchronization meetings should be held regularly, so that each student can know the progress of the whole project and know their role in the project, not only to complete the assigned tasks. This will increase motivation and make it easier to control project risks.

Control project progress

After developers are identified, each milestone needs to be broken down into landable, recyclable tasks and assigned to each person, so that everyone can take the project seriously and keep track of the progress of each task. In terms of tools, online Excel documents can be used to schedule each task, specify the start time and end time for each task, and give good feedback on the progress of the project. In addition, it is better to organize a weekly progress synchronization meeting, so that one can have a better understanding of the progress of the project, and the other can improve the sense of participation of each member.

Gray scale promotion

Since before the beginning of the project, some students were asked to collect pain points, so these students are also the most suitable users for the internal test of the project. And in the early preparation, we have discussed which roles to seek for promotion for us, so this stage is to verify whether our finished products meet their expectations, which can be felt from their investment in promotion. In addition, in the gray promotion period, we should also focus on collecting all kinds of suggestions from users. Production and research students will also fail to consider some aspects due to limited perspective.

In addition to collecting feedback and optimizing the product, we also need to start from the product itself. Exporting the user manual of the product and organizing training are all effective ways of publicity, which can reduce the use cost of users and make users accept this new thing more easily.

Find the thrust

After a short period of grayscale promotion, the project has basically taken shape, and the breakthrough point at this time is to let more teams accept this system. At this stage, we need someone with a lot of influence on the team to help us promote the system. In our company, the project manager is a very influential role in the team. Because our system is designed to liberate the work of the project manager, they are very willing to cooperate with the promotion. When you start a project, it’s important to think about motivation.

Continuous iteration

After the MVP version is promoted in the company, it will receive a lot of feedback, and some special scenarios will be encountered, such as different teams have different development processes, fail to meet specific scenarios and so on. As a project owner, you should set priorities. Because we decided on the final value of the product early on, it was easy to make a decision just by looking at it.