The three-day scrum training course is over and I learned a lot. I would like to thank the company for providing this training opportunity and Xu for sharing his knowledge.
From the very beginning, the lecturer highlighted that the participants in the training were the most experienced. it is conceivable that what everyone pays attention to is not just a coding stage.
At the beginning, I did not pay much attention to this training and listened to it. Well, scrum doesn't mean it's amazing to iterate the waterfall model multiple times. Is that true? For traditional enterprises and traditional business models, they have a fixed corporate culture and require employees to work in accordance with regulations. If we do such an enterprise project, you can say that SCRUM is to split the great waterfall into many small waterfall iterations. However, with the development of society, traditional industries are unable to meet the needs of emerging industries. Modern enterprises like to be different from each other, and they like to break the regular rules. It turns out that this innovation model is more suitable for today's market than the traditional one. For such an enterprise project, we adopt the waterfall model and V model for development, with high costs and risks. Using a spiral model, we can estimate the risk, but reducing the risk requires a lot of cost. Enterprises will not give you a clear requirement. Many problems need to be fixed after countless communications. Therefore, we need to continuously communicate with customers, provide prototypes, clarify requirements, and then continuously iterate. Scrum is not just a waterfall model for multiple iterations. Scrum tells us that when the demand is not clear, we can quickly make a prototype to communicate with the Po, continue to communicate until the demand is clear; scrum tells us to do things on our own, it is more efficient than others to execute things. Scrum tells us that iterations are frequent and problems can be exposed in advance to promptly remedy and reduce risks. Scrum tells us to control costs through time. Scrum tells us that, an efficient team has internal members who are familiar with the status quo of the entire team.
Testing is the least important in domestic projects, especially for development. This kind of consciousness is very wrong, developedCodeHow do you tell others and prove that your code is correct. Is the compilation successful? Well, how can we prove that your code logic is correct. Compile? A qualified developer should write a piece of responsible code, not just through compilation. How to Write responsible code? We should not rely entirely on testers. We should have a piece of test code to prove that our logic is correct. I believe everyone will say that the development cost will be high and it will take a lot of effort to maintain the test code. I thought so before. Later, in actual projects, when I fixed a bug of another person, it led to a lot of new bugs, the tests found these bugs several days later, and I spent several times investigating these new bugs. At this time, I realized the seriousness of the problem. If there was a code segment or an automatic test case at that time, the problem could be detected in time, and no more time would be wasted to detect bugs in the future. It is necessary for developers to test their own code. Especially in the case of complicated business logic, it is essential to have a segment of test code. TDD, test-driven development, Microsoft provides us with many tools and frameworks to help our developers achieve efficient development. We are starting this line.
Scrum is good, but we need to combine it with the actual project-specific environment, and it cannot be applied or abused. After all, beautiful things are a double-edged sword. We look forward to the new features of vs2012 DSL.