Preface
"Software development is a process that requires high intelligence, frequent communication and close collaboration."
If you are also engaged in technical programming related work, you will find that software development has never been an easy task.
On the one hand, software development must not only go from abstract requirements to realizing specific functions and interfaces, but also extract abstract design patterns, system architectures, and UML models from specific and repetitive codes; on the other hand, software development must not only give full play to personal professional skills in dealing with complex logic, but also cooperate with different positions to cooperate in the process of collaboration; in addition, it must not only reserve and protect technicians for programmers to work in an immersive, selfless and efficient manner, but also maintain communication, response, meetings, and reports at any time; finally, the boss, demanders and customers will not forget to give you and your team this and that needs, and it is all very urgent needs. Not to mention, it is so difficult to deliver software continuously, efficiently and stably 365 days a year. But there are always more ways than difficulties.
Back to the present, back to the present.
If you are a CTO or technical person in charge, or you and your R&D team are also experiencing the troubles of low efficiency, many failures, poor quality, and difficult communication in the R&D process, or you are at historical turning points such as airborne, high-speed growth, business transformation, team expansion, structural adjustment, and technological change, we will continue to explore how to face difficulties and essentially solve common problems in delivery from the source, basic process and management model, rather than just repeating one daily problem by case.
On the importance of suitable tools
Why should we talk about collaborative tools? The
tool is a concrete system. First, it is relatively simple to use, and is easier to understand and accept than abstract theories, experiences and rules and regulations. Second, collaborative tools are not that simple. A suitable collaboration tool should help leadership, managers, front-line technical teams, and even business departments and customers better transfer, collaborate and manage.
Just like when choosing a partner, it is difficult for us to change a person's original habits for most of our lives, but we can choose the right partner at the beginning; the same is true for team members. We cannot or are very difficult to change, guide or cultivate a person, but as interviewers and corporate employers at the beginning, we can choose suitable candidates who have potential, ability, experience, and willing to do things. By the same token, it will be difficult for us to modify or change a collaborative tool, and people should not adapt to the tools, but the tools should adapt to the use habits of people and teams, and at the beginning we should look for and find a suitable tool for the team.
does not need to let yourself and your team collaborate, communicate and feedback on R&D in difficulties, pain and entanglement every day. If the current collaboration tools cannot meet or assist you in management, collaboration and reporting, it is time to consider and find more suitable tools.
A useful, practical and durable R&D collaboration tool
As I have more than ten years of experience in the Internet and have passed the thirty years, I have been thinking about what kind of collaboration tool the R&D team should need?
I used to work as a senior development engineer in a listed company. At that time, the R&D team of thousands of people used an internal system developed by the company's outsourcing team. I have also experienced the rapid development of thousands of people, and when leading a research and development team of dozens of people, I use foreign Jira, which is excellent but complex and does not meet domestic habits. During the entrepreneurship stage, I have also used open source project management tools at home and abroad; I have also used traditional manual methods such as Excel and email for demand management. Of course, some collaborative platforms developed and provided by major manufacturers have also been used.
's different collaborative tools have their own characteristics and advantages.
Enterprises and teams of different sizes will also need different collaborative tools due to differences in development stages, different environments in their environments and business characteristics to meet the current needs of individuals, R&D teams, technical management, enterprises, and bosses at different levels. Like software programming,
does not have a universal "silver bullet" for collaborative tools.
But I think that a easy-to-use, practical and durable R&D collaboration tool should be fully considered and supported in the following three aspects.
The first aspect: collaboration flow
The second aspect: information flow
The third aspect: value flow
collaboration flow + information flow + value flow = R&D closed-loop management
First of all, let’s talk about the collaboration flow first. As a R&D collaboration tool,
must first meet the basic functions, which is the collaboration process of the R&D team's daily work, from the demand proposal to the final launch. For example, the following collaboration flowchart. Of course, what you and your team need more is a flowchart that suits you and can meet your collaborative needs, which is the most critical.
combined with ToC's most popular social products, it has referenced many excellent practices to achieve the ultimate user experience in products. I have been thinking about why the management system must be so difficult to use? Why can't we use the user thinking of ToC products to develop and provide a ToB, low-frequency, complex system?
For this purpose, I proposed a collaborative tool for designing and developing ToB using the user experience method of ToC. This is the slice:
takes project collaboration as the core, and according to the F-focus principle that users pay attention to by PC version users, the left side is the current project of your team, and the right side is the specific project information. Like social chat software, you can quickly and easily switch and view different projects. In the project menu list on the left, the latest project dynamics will be displayed in real time (such as how many unread chat messages you have), and will be sorted according to the recently updated projects (so that you can know which project is recently active, has changed, and has made progress), and there are also thoughtful project red dots, allowing you to quickly know which project is something you need to pay attention to and participate in. Of course, you can also perform project top operations. What's more important is that in a project, you and your team can collaborate in All In One. This will be introduced in detail below. What’s more important is that this is a collaborative tool that understands you and research and development. We will continue to introduce it later.
Let’s talk about information flow.
People say, "Beautiful love is in two directions." In the workplace, especially in software research and development, communication and feedback are the same.
Generally, technical R&D personnel are busy, not good at expressing and communicating, and do not like to expose their problems, faults and shortcomings to others (not even consider them to be their own shortcomings or problems). You may feel or experience a scenario where the boss or demander is anxious and the technician is calm; you are eager to know the recent development progress, current risks and when it is expected to be completed, the technology will only say to you "It's getting faster and faster", or "I don't know how long it will take, it's hard to evaluate." The
requirement has been put forward. When will it be completed? doesn't know. tasks have been allocated and arranged, how is the progress? doesn't know. Which one is following up on the bug of and changing a small copywriting? doesn't know.
do we really don’t know? No. In the final analysis, on the one hand, it is a communication problem; on the other hand, it lacks automatic support from tools; on the third, it is a problem of the habits and styles of team members.
If it is a personnel issue, then I suggest choosing a more suitable new person next time; if it is a communication issue, you can temporarily communicate privately, at workstations and at meetings about this incident. If it is a collaborative tool, I think: corporate email + group notification + site reminder + historical changes such as combination notifications are more appropriate.
corporate email, the email itself is a formal and important notification. Therefore, we will choose to use email to send important personal assignments and matters that need to be completed. At the same time, appropriate reminders should be provided for closed-loop feedback and mid-way changes. Therefore, this complete, fully designed and actually verified email notification rules are available.
Enterprise email is To personal notification reminder, group notification, such as: Dingding group notification, enterprise WeChat group notification, Feishu group notification, which is aimed at the team, project team, and To project stakeholders. Because a project team, in addition to R&D personnel, products, and testing, also has project stakeholders such as project managers, technical management, leaders, bosses, demanders, and business departments. These stakeholders do not need to participate directly in the project, but they need to keep a close eye on or synchronize the actual situation, progress and risks of the project. Let them know "What is happening with " and want " to see together" (as mentioned in DingTalk's cool application). instead of always making R&D a "black hole", the outside world knows nothing about it.
So, I will see such email and text notifications (Tips: The picture is a screenshot in the first text, which is convenient for reminding R&D personnel to quickly recall which requirement, which bug or which project is this).
In the chat group, you can see such transparent and synchronous real-time project dynamic information. For example: DingTalk Group notification, enterprise information group notification, Feishu Group notification (FeiShu Group needs to send pictures to the company first, which is quite complicated, so the first image has not been displayed yet).
combined with site reminders, page prompts, historical change records, project small red dots, etc., can make information and data run more errands, allowing R&D teams and managers to save more worry.
allows collaborative tools to help us and our team to achieve rapid recording, continuous follow-up, automatic feedback, and closed-loop management .
Finally, it is the value stream.
You said that a R&D team, gathered together, so many people wrote hundreds of thousands of lines of code, and viewed and replied to so much information every day, why? It is to finally deliver normal and valuable software. The
process and results are equally important.
delivers the same software, which can be very efficient or slow; you can complete it with one click through automation, or you can repeat operations manually (and make mistakes easily); you can ask repeatedly and ask but still fail to get real, comprehensive and timely results, or you can visualize and promptly feedback and push through tools.
For example, combined with ideas and concepts such as DevOps and continuous delivery, in the final release, we can combine: one-click release + automated unit testing + real-time DingTalk group notification to achieve both efficient and stable continuous release.
Also, developers write code every day and submit git. So, we can use this as the entry point, combining [Git code submission] + [Group Chat] + [Daily Work Registration] + [Demand Progress Feedback], these high-frequency aspects and collaboration needs to design and improve efficiency.
When a git code is submitted (the developer only needs to copy the requirement title or manually specify the requirement ID), a series of actions can be implemented: automatically associate the code submission to the requirement (for convenient later tracking and code review), automatically update the requirement status to R&D (requiry flow), automatically create the required tasks (for convenient registration of work hours, or close it), and make necessary group notifications.
Multifunctional R&D collaborative tool introduction
introduces so many experiences and experiences. Next, relax. Let’s experience and see this multi-functional R&D collaborative tool. What are its differences and features?
Due to limited margins, these focus on introducing YesDev's ability in collaboration flow, that is, how to collaborate more content in a project.
1. Project collaboration: Agile development
is suitable for short, flat and fast product iteration, small steps and fast running.
2. Project Management: Waterfall R&D
is suitable for outsourcing projects and large projects, such as the full process management of large projects with more than 500 people and days.
3, project set management
arbitrarily associate multiple projects, focusing on the project manager or technical person in charge of the project collection you want to care about.
4, technical special collaboration
such as reconstruction, system optimization, online fault replication, research, third-party docking, etc.
5, knowledge base
share technology, inherit knowledge, and accumulate experience.
6, external collaboration
and external partners, upstream and downstream, and even with customers.
7, custom R&D model
configure the templates you like and your team, and support customized project templates such as individuals, teams, and enterprises.
8, work items
work items that team members need to execute and complete. There are: documents, requirements, tasks, problems, etc.
9, statistics chart
visual statistics chart, automatically generated and viewed at any time. For example: overview, daily burnout chart, colorful Gantt chart, incremental schedule...
10, general module
common functions, such as: history, attachments, notes, doc documents/Excel export and import, etc.
In summary, YesDev supports: agile development / DevOps / Scrum / Waterfall / Hybrid R&D models. It combines agile development and DevOps dual engines to realize flat collaboration and closed-loop management throughout the R&D process.