Management , It's mainly about managing people and directors ,“ The goal is - Business - personnel ” Always the core link of team management . therefore , Software R & D team management mainly needs to do the following aspects of work ：
Software R & D team management theme
The so-called team , A group of people organized for a common purpose . therefore , Setting goals is the top priority of team management .
Team goals vary depending on the nature of the team . Some teams are set up for temporary tasks , Need to define temporary goals for team members ; Some teams are set up to complete a large number of related tasks over a long period of time , The vision of the team needs to be clear for team members 、 duty 、 Long term goals and short-term goals, etc . For the team in the team , We need to do a good job of goal decomposition , The goals of the sub team should be consistent with the goals and vision of the parent team .
Team goals are not static . Team goals may change during the life cycle of the team . And the team's Leader Always communicate with the superior leaders or organizations , Be good at capturing these changes , Correct the direction for the team in time .
Team goals should be communicated and corrected in time . The team Leader As a team “ guys ”, Communicate with team members frequently , Make sure team goals are communicated in a timely and accurate manner . The ultimate goal of team management by objectives is to make team members clear about their work direction , Think in one place , Push hard to one place . If Leader Find signs of conflict between members' work direction and team goals , It should be corrected in time , Timely solution .
Take the current team , The team is a research and development group under the company's science and technology department , Responsible for the construction and maintenance of several important systems of the company's sales business line . therefore , The goal of the team is to work with the company 、 Line of business 、 The Ministry of science and technology has the same goal , Fulfill the mission and responsibilities assigned by the superior . say concretely , The goals I set for the team include these aspects ：
① It is to ensure the stable operation of production . With the power of the operations and infrastructure team , Monitor and alarm the operation of the system , Ask the team to be able to predict in time 、 Find out 、 Solve production problems , Ensure the healthy and stable operation of the company's sales business .
② It's about responding quickly to business needs . The productivity of a team is the vitality of a team , It's the value of the team , Rapid response to business needs is a manifestation of team productivity , Teams need to be able to respond and implement business needs in a timely manner , Make sure the company is competitive in the sales business .
③ It is to actively explore technological empowerment . As a R & D team , You can't just achieve business requirements , It's about actively exploring 、 Study 、 Apply cutting edge information technology and design concepts , While improving the advanced nature of the application system , More possibilities for business development , So as to create new business growth points , Empowering business .
④ It's about improving quality and efficiency and reducing costs . The first three goals can be said to focus on the business of the company , It's a team “ Yang ” The general mission . And this one comes from the need of company management , Including continuous improvement of quality and efficiency , Keep reducing costs , It could be the team “ Yin ” The general mission . Only “ Yin ”“ Yang ” Coordinated development , Team work is the only way to stay on track .
Team goals and mission
Put your ideas right
Put your ideas right , It means to constantly hone the values and willpower of team members , The purpose is to solve the ideological problems of the members , So that team members can show consistent values and strong resilience in their work , So as to avoid the phenomenon of falling behind and deviation , Ensure the team's strong fighting capacity .
Consistent values help improve work efficiency . After the team members have formed the same values , Will form a consensus and action on all kinds of problems in the project as soon as possible , So as to avoid unnecessary communication , Improve work efficiency . Take the software development team , To enable team members to have certain business thinking habits , Have value to users 、 The sensitivity of business value , You can jump out of the circle of technology to think and solve problems at any time .
Consistent values help improve the quality of work . Values are not just about right and wrong , It also includes the judgment of good and bad . Software design , Often at cost 、 Time limit 、 Balance the technical solutions in terms of quality, etc , Judge good or bad . So , Teams need to develop their own quality standards , And to every member , In every aspect of our work , Ensure the quality of the final output .
Consistent values need the support of willpower . The team is in the process of practicing values , There may be all kinds of difficulties and obstacles . At this time , You need to come up with uncompromising 、 The spirit and will not admit defeat , Support yourself to achieve your goals . In the process of software development , Business 、 product 、 Development 、 Operation and maintenance 、 It is inevitable that there will be some conflicts of interest in various roles such as testing , Also often meet “ Departmental wall ” The problem of , At this time, we often need values and willpower to solve problems .
Shaping the values and willpower of a team is a long-term thing , We can take advantage of this opportunity in our work , We also need to take the initiative , Through training 、 communication 、 In the form of League building and other activities . Requirements in the process of software development 、 Design 、 Code 、 Testing and other kinds of review meetings , It's a great opportunity to implement values .
Take care of the project
The project is what the team does “ things ”, It's a way for a team to realize value , The team has to do a good job “ things ”, To survive and develop , The project is the foundation of the team .
The projects the team does and the responsibilities of the team 、 Mission related , It's based on team goals . For software development , Usually by Business creates demand , Demand generation projects , Project generation system , The system realizes business , So as to form a complete closed loop . Of course , In addition to business projects , The software R & D team will also have optimization projects 、 Maintenance projects 、 Research projects and so on .
Software development process closed loop
The modern project management knowledge system recognized in the field of project management （PMBOK） Including startup （Initating）、 planning （Planning）、 perform （Execution）、 monitor （Monitoring & Controlling）、 finishing （Closing） Five processes and integration （Integration）、 Range （Scope）、 Time （Time）、 cost （Cost）、 quality （Quality）、 purchase （Procurement）、 Human resources （Human resource）、 communicate （Communication）、 risk （Risk management）、 Stakeholders （Stakeholder management） Ten areas , It involves all aspects of project management , It's very mature .
Ten knowledge areas of project management
Software R & D project has its own particularity , Its development progress and quality are not easy to measure , Development efficiency is also difficult to predict and guarantee , Software complexity also implies unpredictable and uncontrollable risks , Especially large software systems , The difficulties are particularly prominent .
In order to solve these problems of software R & D project , Some software development process management methods emerge as the times require , At present, the most popular ones are waterfalls （Walterful）、 agile （Agile）、Scrum、Kanban、 Lean （Lean） These kinds of , It needs to be selected according to the actual situation of the project .
Waterfall is a traditional development management method , It's linear 、 One way feature , The disadvantage is the rigidity of the process , It is suitable for projects with less uncertainty in the development stage and strict deadline requirements .
Agile is characterized by incremental or iterative , Emphasize the flexibility of the process , The goal is to better respond to changes in business needs 、 Deliver value faster , Suitable for flexibility 、 complexity 、 Projects with high uncertainty .
Scrum As a kind of agility , There are some processes and rules of their own , You need to follow specific roles 、 Responsibilities and meetings , Emphasis on teamwork and communication , Team for each Sprint Make a commitment , More suitable for less than 7 A small team of people .
Kanban It's also one of the popular agile methods , Inspired by the grocery store , Through the visual flow of value and the limitation of WIP quantity, process problems can be found , And continuous improvement .Kanban Than Scrum More respect for the existing role of the team , No special meeting requirements , More flexible . Maintenance projects are more suitable for use Kanban Method management .
Lean management emphasizes efficiency , and Kanban Same from Toyota , The core idea is to simplify the process 、 Eliminate waste and value delivery , Can effectively improve the productivity of the team .
agile （Agile） And lean （Lean） The relationship between
Software project management usually uses Stacey Matrix Let's choose a model ：
- The needs are clear 、 The plan is clear Waterfall is recommended for simple projects （Waterful） management
- Needs are clear 、 The plan is not sure Agile is recommended for tough projects （Agile） management
- The demand is not very clear 、 It's not difficult to achieve The brain burning project is recommended to be managed in a waterfall or agile way
- The need is not clear 、 The plan is not clear Complex projects recommend Scrum management
- Requirements and solutions are highly unknown Chaos project recommends Kanban management
utilize Stacey Matrix Decision making of project management mode selection
A very important part of team management is the management of people , We need to establish a reasonable personnel structure according to the team goals , And focus on the current needs of each team member , Through guidance 、 Support 、 Participate in 、 Appointment and other forms of management , Promote the progress and growth of members while doing things , Realize the individual value of members .
according to Bruce Tuckman The study of , Team development will go through the formation period （Forming）、 Storming （Storming）、 Standard period （Norming）、 Execution period （Performing） And rest period （Adjourning） Five stages . According to this model , It can easily identify the current stage of the team and members , To take specific orders 、 Coach 、 to grant authorization 、 Motivation and other behaviors .
Tuckman Team development phase model
The core of team member management is to focus on people's needs , Especially growth needs . Roles and responsibilities should be arranged according to the characteristics of members , Plan a clear development path , Guide and motivate members to grow and progress , To meet the psychological safety needs of members .
The software R & D team needs to focus on re technology 、 Learning and application of new methods . Software development is an intelligence intensive activity , The development of technology and theory is changing with each passing day , Training and learning are particularly important . Team managers should pay attention to the new technology 、 The experiment of the new method 、 Training and Application , Provide learning platform and opportunities for team members , Maintain and enhance the attractiveness of the team 、 Cohesion .
Software R & D team should pay attention to clear responsibilities 、 clear . Software is compiled from code , Messy code responsibilities can easily lead to poor software quality . Be clear about each requirement 、 Every design 、 Every piece of code 、 Each module 、 The person in charge of the overall architecture , And it's better to be consistent , Clarify the responsibility mechanism , To prevent squabbling and confusion , Effectively guarantee the quality of code and software .
Software R & D team should pay attention to working methods 、 Tool training . Software development needs a lot of collaboration , It requires a lot of communication between members . Managers should pay attention to the working methods of their members 、 tool of production 、 The training of thinking methods , Especially the way of communication 、 Logical thinking 、 Structural thinking 、 Training in critical thinking, etc , Improve the cooperation efficiency of members 、 Productivity and problem solving ability .
The above are some opinions on the management of software R & D team , Software R & D team management involves a wide range of knowledge areas , There's a lot to master , There's something that needs to be learned , Let's study , Learning together , Common progress .