Chapter One introduction to the Knowledge field of 1.2.4 Software engineering
Question: Since the domain of software engineering involves so much, how should we learn it well?
Answer: The software engineering major is a study of engineering methods to build and maintain effective, practical and high-quality software disciplines.
It involves programming languages, databases, software development tools, system platforms, standards, design patterns, and so on. In modern society,
Software is used in many ways. Typical software such as e-mail, embedded system, HMI, Office suite, operating system,
Compilers, databases, games and more. Therefore, each course should be taken seriously.
Chapter II Personal technology and processes 2.1 Unit Test 2.3 person development process
Question: How do you write a unit test for a software engineer? How to achieve both customer satisfaction and efficient completion of projects and improve their personal development capabilities?
Answer: Write good unit test needs our continuous accumulation and improvement, we need to constantly in the work to summarize. There are no simple formulas or rules that can be followed to write good unit tests.
Only rational analysis can serve as a guide to our actions and must be changed and promoted from the Inside out.
3rd. Software Engineer's growth 3.2 software engineer Career Development 3.3 The reverse of skill
Question: How do you orient yourself to the right path to career development? In a modern society, should a software engineer be involved in all relevant skills and knowledge, or concentrate his energies on a particular area?
Answer: Career choices Most need is "the most suitable for their own". When choosing a career, the more individuals and professions match, the easier it is for people to adapt to new occupations,
The quality of work and life after employment is higher. If your interests, personality, professional ability and professional requirements do not match, then soon there will be a
The conflict between human characteristics and professional requirements cannot be better adapted to the new work. Therefore, we should look for "the most suitable" when choosing a job, without forcing others
"Best" in the eye. I think we should focus my energy on a particular area, because "the industry is specialized."
4th Chapter Two cooperation 4.3 code design specification 4.5 pair programming
Question: How can you make your code design norms, can get the approval of others, the focus should pay more attention to what? How to effectively overcome the friction caused by pairing programming and improve your ability in pairing programming? and pair programming, which one doesn't fit?
Answer: Proper indentation can make code specifications, look neat, and make people more receptive. Through constant running-in to overcome difficulties. Pair programming is not suitable for individuals with individual heroism.
5th. Team and Process 5.1 non-team and team 5.3 development process
Question: How do you find a team model that suits you? How can we better integrate into a team? The importance of the software development process.
Answer: The team who can find happiness and find happiness in the work. The best way is to communicate more. Software development Requirements Management is a very important task in software project management, in many failed software projects, due to the demand cause of a considerable proportion, therefore, demand management will be the ultimate success of software projects have a critical impact. However, in the actual software development process, many developers understand the need is not enough. In my actual experience, software development is not a simple technical work, but a system of software requirements development and management work. If a project manager wants to do a good job in software project management, it must study how to use demand management theory and method to obtain demand, and how to describe the function of software system-demand modeling. The purpose is to understand the functional requirements of the user, clarify the vague functional requirements, so that software engineers and software users to understand the system function is consistent. As far as practical work experience is concerned, it is very important to embody the user-centered idea regardless of the method used, because the ultimate owner of the software is the user.
6th Agile Process 6.3 Agile Team 6.4 Agile Summary
Question: How do you measure agile processes that are appropriate for the team or for the current project? Do all teams have the ability to be agile? How do you find an agile approach that fits your team?
Answer: Agile development is better suited to a well-trained team, conversely, if not a well-trained team is not appropriate. Not, because there are traditional software engineering. The agile approach is more of a focus on discovering the problem, and it can help you find problems and expose problems faster.
7th MSF 7.2 MSF Basic principles 7.2.3 Full authorization and trust 7.3 MSF Team Model 7.5 MSF Agile Development Model
Question: Under what circumstances does full authorization and trust apply? How does the MSF Team model find a common balance between conflicts when it comes to conflict when it comes to discussing processing scenarios?
What is the advantage of the MSF Agile Development model over the previous Agile development model? Is it useless to have a previous agile development model?
Answer: The team members can actively and fully exert their talents and abilities in their respective positions, at any time, willing to be the team in the overall consideration of the time. MSF The Agile development model absorbs the advantages of various "agile" development models prevalent in the software industry in recent years, realizing that most of the software is connected with the network application, emphasizing the communication with the users more closely, quickly overlapping, avoiding unnecessary process. the MSF process model, developed from the traditional software development waterfall model and the Helix model, combines the milestone-based planning advantages of the waterfall model with the strengths of the incremental iterations in the Helix model.
Eighth Requirements Analysis 8.2 Software PRODUCT stakeholders 8.4 functional positioning
Question: How can we efficiently understand the background, psychology, and needs of users in a broad and deep way? How to ensure that the products you make are competing with others to keep yourself in the edge?
Answer: The best way of course is that you develop things yourself will also use, such as you develop QQ, you also use QQ, you can understand what users need. can collect feedback from target users
Either to do new applications that others have not done, either to innovate in the same application, or to do better in homogeneous products than others, on these three paths, nothing else.
Nineth Chapter Project Manager
Question: As a PM, how can I get support from all team members? As a PM and how to manage their colleagues, so that the project to do better?
Answer: The main responsibility of the project manager is to communicate and manage the progress, funding and scope of the control project. Management control should be a little tighter at the beginning of the project. After
A period of understanding that the team is more reliable, can give them more freedom. As a project manager, you should devote more effort to the project plan.
And according to the various risks to prepare the response plan, to ensure that the project completed on schedule.
Tenth. Typical users and scenarios
Question: Why define a typical user, what is the impact of a typical user on our products? The importance of a functional specification?
Answer: The target user of the product is to be determined before designing the product. If you don't have a clear target user, then the character creation you're going to talk about won't unfold.
Design products to make users satisfied, you have to know who the user is. No target user's product is sad, that is completely in yy. Each product should have its own target group of users,
After the delineation of the relatively fixed part of the group, it is necessary to conduct research and analysis of them, in order to design products can be consulted, after all, the main purpose of the product is to meet the
Needs of the user. Function instructions: To help users understand the product, to ensure that users use the product correctly and safely, the function manual is to guide users to select products, use the Product Roadmap and guide.
The 11th chapter of software design and implementation of the 11.2 development phase of the daily management
Question: How do you deal with these unexpected situations during the development phase?
Answer: Software maintainability is a key goal, anomaly, and accident in all phases of the software development phase. Control is important for development work and we have to consider the consequences before making any changes.
Early detection and early resolution are needed to pre-contract possible accidents.
12th Elements of user experience 12.1 user Experience
Question: How to give the user a very good first impression, how should our products target the people of the product? How to tap potential users? How to balance the conflict between user experience and product quality?
Reply:
To put it simply, it is to tell the user: Why our products are better than others ' homes.
This is actually the process of showing the user to themselves. Developers must understand that the reason why users can look at your app description is that they have already seen the name of the product, as well as the recommended page by clicking on the application Details screen. The equivalent of one of their feet has entered the door, and then the app description and then drag them in, the user has got it.
Chapter 13 Software Testing 13.5 exercises and discussions
Question: What does it mean to automate as many test cases as possible in the release phase of the Test team?
Answer: Test automation is the general direction of software testing. The introduction of automated testing as its core component frees QA from heavy repetitive work, accomplishes hard-to-organize tests, optimizes test resources, and improves testing efficiency. Excellent automated testing framework, complete set of automated test scripts, and a wealth of automated testing tools will make testing more efficient, and the product quality assurance plays a positive role. An automated test script, framework, tool development capabilities of QA, more competitive is an understandable thing.
Chapter 14 Quality Assurance 14.2 Software Quality assurance work
Question: After the division of labor, how to ensure that the results of others to achieve quality?
Answer: All activities, including testing, performed by members of the software team to enable the software to achieve pre-defined quality.
Division of labor is the result of social and industrial evolution. Development and testing are actually two branches of software engineering. Different software/services require different ways and degrees of testing.
Chapter 15 stability and release phase 15.2 after release--hindsight conference
Question: What is the specific meaning of the hindsight meeting for the team?
Answer: Make an effective project summary. Assumptions and goals what problem does our software solve? Is it clearly defined? Is there a clear description of typical users and typical scenarios?
Make a series of summaries of your projects, identify deficiencies and improvements, and optimise our products.
Chapter 16 Innovation in IT industry
Question: How can you improve your team's ability to innovate? How does the technology and practice of software engineering help innovation?
Reply:It is not easy to design an effective team in the actual operation of the enterprise team building, but it is not like most people think-it is a very difficult thing, often feel like the impossible. Often, some common management tools are used to simplify team building efforts. In-depth understanding of the team members, the strengths and weaknesses of the team members, the preferences for work, the way to deal with problems, the basic values of differences, etc. through these analyses, we finally get a common belief among team members and a consistent view of the team's goals to build up the rules of the game that the team runs. Each team has its strengths and weaknesses, and the team has to be successful in the face of external threats and opportunities, through the analysis of the team's environment to assess the overall capabilities of the team, to identify the team's current comprehensive ability to achieve the goal of the team between the gap, to identify how the team to play an advantage, avoid threats, improve the ability to meet challenges The team's task-oriented, so that each team member clear the team's goals, action plans, in order to inspire the team members of the passion, should establish a milestone, so that the team to see the task objectives, touch, create a member excited fantasy. The right time to take appropriate action is the key to team success, Team task initiation, team encounter difficulties or obstacles, the team should seize the opportunity to analyze and solve, and the team in the face of internal and external conflict when the timing of the relief or elimination, and when and where to obtain the appropriate resources to support; How to act involves team operation issues. That is, how the division within the team, different team roles should assume responsibility, performance of power, coordination and communication, etc., therefore, the team within each member should also have a clear job description and description, in order to establish team members work standards. For this problem, it is easy to be neglected in many enterprise team building, which may also be one of the reasons that lead to the inefficient operation of the team. To be effective, the team must have a clear understanding of why they are joining the team, and what is the positive and negative impact of the team's success and failure on their operations? To enhance team members ' sense of responsibility and mission. The incentive mechanism that we often talk about is the introduction of team building, which can be an increase in team honors, pay or benefits, and promotion of jobs. (b), for the staff to provide opportunities for further education only a learning team who know how to enrich themselves can create more "miracles" in the Society of development. From the role of learning: the traditional marketing team's learning awareness is not strong, they are more satisfied with the inherent knowledge and experience, but not very consciously absorbing new knowledge, also do not actively carry out horizontal learning. In the study-oriented marketing team, whether from the mechanism or the concept is full of strong re-learning consciousness, good at practice in the combination of theory and practice, good at discovering the merits of others to absorb. In the face of such employees, business leaders need to be adept at creating learning opportunities and organizing learning. In the book of the fifth discipline of Peter St. Regis, he speaksTo, as a team, what are the characteristics of organizational learning? In fact, there are five disciplines, and the theory, tools and methods of a learning organization are three areas, and these three areas are supportive of core competencies. Describe it as a three-legged stool, three legs are very important, if you take off a leg, the stool will pour, the left leg is called aspiration, desire, the right is the mental model and team learning, the middle is the system thinking. Each leg is important, meaning each core competency is important. Generally speaking, the wisdom of the group is always higher than that of the individual. When groups are really learning, not only do groups produce great results, but their individual members grow faster than other ways of learning. (iii), to listen to the views of employees in the team, perhaps we do not need each team member is unusually clever, because over-intelligent tends to self-awareness expansion, like greatness, instead, but need everyone to have a strong sense of responsibility and dedication to the team carefully formulated strategies to understand, grasp, Thoroughly understand on the basis of the implementation of the tactics to the letter, unswervingly, for the process of each operation details and every project process should be implemented. In addition, to ensure the execution of the team, the key to the implementation of the objectives to be realized in which stages and specific indicators, which is the key to ensure the quality of the task, but also to ensure that the team executive force is the key. (iv) Encourage employees ' creativity to keep the competitive advantage of the enterprise only by innovating continuously, but where does the innovation ability come from? To do education and training is an important means to improve the creative ability of talent team. Because it is an important way to improve the knowledge level and comprehensive quality of the players, the knowledge and skill of the players is the precondition of stimulating the innovation ability. Especially in the era of knowledge economy, in the high-tech products industry enterprises, this point is more obvious. In fact, the innovation ability is embodied in all aspects of enterprise management, is a comprehensive concept, but also only a comprehensive innovation ability, is the real competitive advantage of the innovative ability. Talent training is not only to focus on knowledge and skills, but also to consider the moral, emotional, like and other spiritual aspects of the enterprise culture, consider the cohesion and team spirit of the talent team, which is only the enterprise comprehensive education and training can do. Whoever grasps well and does well in this respect will be able to maintain a long-term overall innovation advantage in the competition and ultimately defeat the opponent in the competition. (v), the Division of Labor and the development of cooperative enterprises from the inside, through the founder of the accumulation of loose individuals to expand the size of the group until the organizational structure, functional balanced development process. is the evolution of its evolutionary law presents a wave of fluctuations in the impetus, its active force from the internal cycle of energy supply. In other words, the team leader has the ability to coach and mobilize the group, the management has the ability to coach and mobilize the subordinates, the staff has the ability of coaching and self-initiation, and finally forms the movement posture of the middle-lower balance and overall interaction. But all levels should be able to familiarize and understand other departments, and be able to workcooperate with each other, otherwise the strategy, tactics can only be narcissistic, cannot let other departments carry out the operation at all. (vi), strengthen leadership to enhance and play the guiding role of leadership, first of all, leadership must lead by example, to team members as role models and exemplary role, second, clear specific quality of work, scope, duration, cost and other objectives constraints; Thirdly, clarify the roles and responsibilities of each team member and give full play to the role of the project team members. (vii), give full play to the leadership of communication and coordination role first, team members of communication and coordination. There are various conflicts between members due to differences in values, personalities and ways of doing things, interpersonal relationships are in tension, even hostility, strong emotions and challenges to leaders. The leader should communicate fully, guide the team members to adjust the mentality and accurately position the role, the personal goals and objectives of the work together, clearly know what to do, and clearly how to do. Secondly, the communication and coordination between the team members and the working environment. There will also be disharmony between team members and the surrounding environment, such as uncoordinated with the technical system, unfamiliar with the information technology system used by the team, etc. Leadership to help team members familiar with the work environment, learn and master the relevant technology, in order to facilitate the timely completion of project objectives. Thirdly, the communication and coordination between the team and other departments. In the process of work, the relationship between the team and other departments will also produce a variety of contradictions, which requires leadership with good communication and coordination, for the team to strive for more adequate resources and better environment, and the work process and work objectives and work stakeholders to reach a constant consensus, and better promote the achievement of the objectives of the work. (eight), give full play to the leadership of the incentive role in the work process, due to strict goal constraints and changeable external environment, leadership must use various incentive theory to work class members in a timely manner, encourage and motivate team members enthusiasm, initiative, give full play to team members creativity. (ix), flexible authorization, timely decision-making as the team builds and develops, the leader is empowered to share responsibility with the team members, allowing the team members to participate more in the project decision-making process, allowing individuals or groups to work in their own more flexible way. First of all, through flexible authorization, show the leadership of the team members trust, but also to the team members learn and grow space. This trust can lay the foundation of Team Trust and is the embodiment of team spirit between leadership and team. Secondly, authorization is beneficial to give full play to team members ' enthusiasm and creativity. Everyone has a desire to realize self-worth. Challenging tasks that enable them to constantly expand their knowledge and skills to discover their creative potential. The success of every job is not only the success of leadership management, but also the success of all team members who realize their self-worth. Again, flexible authorization, facilitate timely decision-making. On the one hand, the team members within their own scope of authorization can be based on changes in the internal and external environment timely decision-making, on the other hand, through flexible licensing, leadership gradually focus on the workSteering key point control, target control and process monitoring. The focus of the leadership is shifted from within, focusing on dealing with the relationship between work and the business or society, and externally safeguarding the operation of the project team. Third, give full play to team cohesion team cohesion is intangible spiritual strength, is a team members closely linked to the invisible link. The cohesion of the team comes from the self-conscious motivation of the team members, from the consensus values, is the highest embodiment of the team spirit. In general, high team cohesion leads to high team performance. Team cohesion in the external performance of the team members of the team's sense of honor and team status. The team's sense of honor mainly comes from the work goal, the team is produced by the work goal, exists for the work goal. Therefore, it is necessary to set a high goal commitment, to lead the team in the direction of high work objectives, so that the team members of the work objectives to form a unified and strong consensus, to inspire team members of the team's sense of honor. At the same time, the team members to guide the unity of individual goals and work objectives, increase team members of the team's centripetal force, so that the team to high efficiency. Copyright statement: How to improve team cohesion by team cohesion in the internal performance of the team members of the integration and team morale. People are people in society, good interpersonal relationship is the lubricant of efficient team. Therefore, it is necessary to take effective measures to enhance the integration and affinity between team members, resulting in high team morale. The team is open, there will be new members at different stages, high team cohesion will allow team members in the short term to establish team awareness, to form a sense of identity and belonging to the team, shorten the running-in period of new members and teams, during normal operation, the team's work performance greatly improved.
Rapid prototyping, continuous refactoring, summarizing after each milestone.
Chapter 17 Human, performance and professional ethics
Question: In the running-in period, how to effectively manage their own team, through the running-in period? Where is the moral bottom line for software engineers?
How to measure your own behavior is not in line with the code of Ethics of software engineers?
Answer: Communicate and communicate more, keep abreast of the dynamics of the subordinates, and pay close attention to them. Honesty is the basis of professional ethics.
See if it affects the normal work of others.
Answer your questions.