Agility Practice 12 principles [reproduced]

xiaoxiao2021-03-06  39

Martin

Agility Practice 12 principles, they are the characteristics of agile practice differences from heavy duty processes. 1. We must make customers satisfied with the early, sustained delivery of valuable software. Mit Sloan Management Comment Magazine published a paper, analyzed software development practices for companies to build high quality products. The paper discovered a lot of practices that had important impact on the quality of the final system. One of the practices suggest that there is a strong correlation between systems and system quality of partial functions as early as possible. The paper pointed out that the less functionality included in the initial delivery system, the higher the quality of the ultimately delivered system. Another discovery of the paper is that there is a very strong correlation between the system and the final quality in the form of gradually increased function. The more frequent delivery, the higher the quality of the final product. Agile practice will be delivered frequently as early as possible. We strive to deliver a basic functionality in the weeks of the project. Then, we strive to insist on deliver a functional increasing system every two weeks. If the customer thinks that the current function is enough, customers can choose to join these systems into the product. Alternatively, they can simply check the features existing again and point out what they want to do. 2. Even later, it is also welcome to change demand. Agile process uses changes to create competitive advantages for customers. This is a statement about attitude. Participants in agile process are not afraid of changes. They think that changing demand is good, because those changes means that the team has already learned how many knowledge needs to meet the needs of the market. The agile team will work hard to maintain the flexibility of the software structure, so that the impact caused by the system is minimal when demand changes. In the back of this book, we will learn some principles and patterns for object-oriented design, which will help us maintain this flexibility. 3. Software that is often delivered, the interval delivered can be delivered from several weeks to a few months, the shorter the time interval delivered, the better. We deliver the software that can work (Working Software) and as early as possible (after the project starts rarely a few weeks), it is often delivered frequently (thereafter a few weeks later). We don't agree with a lot of documentation or plan. We think those things that are not really deliver. The goal we pay attention is to deliver the software that meets customers. 4. During the development of the entire project, business people and developers must work every day. In order to be able to develop, customers, developers, and related people must be significant, frequent interactions between the development, customers, developers, and related people. The software project is not like an automatic navigation of weapons that can be automatically navigated, and the software items must be continuously guided. 5. Build a project around an individual that is embraced. Give them the required environment and support and trust them to complete the work. In the agile project, people are considered to be the most important factor in the success of the project. All other factors - processes, environment, management, etc. - are considered secondary, and they have to change them when they have negative impact on people. For example, if the office environment hinders the team's work, it must change the office environment. If some process steps have hindered the work of the team, they must change those process steps. 6. Inside the team, the most effectively and efficient way to transfer information is the face-to-face conversation. In the agile project, people talk about each other. The primary communication method is to talk. Perhaps the document will be written, but it will not attempt to include all item information in the document. The agile team does not need a written specification, written plan or written design. Team members can write documents, if the demand for these documents is urgent and significant, but the document is not the default communication method. The default communication method is a conversation. 7. Working software is the primary schedule metric. Agile items metrically measure development progress by metrically satisfying the number of customer needs.

They are not based on the number of documents that have been written in the development phase, the number of infrastructure codes that have already been created. Only when 30% must function, it is possible to determine that the progress is 30%. 8. Agile process advocates sustainable development speed. The SPonsors, developers and users should be able to maintain a long-standing, constant development speed. The agile project is not 50 meters sprint; but the marathon runs. The team is not starting at all speed and tried to maintain that speed during project development; instead, they travel with fast but sustainable speed. It will lead to the team's energy to run out, and short-term behavior has collapsed. Agile team will measure their speed. They don't allow themselves too tired. They will not borrow a lot of work today. They work in a speed that keeps the highest quality standard during the development of the entire project. 9. Continuously pay attention to excellent skills and good designs will enhance agility. High product quality is the key to high development speed. Keep the software as clean as possible, robust is the way to quickly develop software. Thus, all agile team members are committed to writing only the highest quality code they can write. They don't make a chaotic and tell themselves to clean them with more time. If they make chaos today, they will clean up the confusion today. 10. Simple - Maximize the unfinished work - it is fundamental. The agile team will not try to build those gobbled systems, they are always the easiest way to adopt and goal. They don't value forecasts for problems that will appear tomorrow, and they will not defense those issues today. Instead, they have the easiest work with the highest quality today, and it will be easy to handle if problems occur tomorrow. 11. The best architecture, demand and design are self-organized teams. The agile team is a self-organized team. The task is not assigned to a single team member from the outside, but allocated to the entire team, then the team to determine the best way to complete the task. Members of the agile team work together to solve all the problems in the project. Every member has participation power in all aspects of the project. There is no single team member responsible for system architecture, demand or testing. The entire team assumes those responsibilities, and each team member can affect them. 12. Every time, the team will make an anti-provision in how to work more effectively and then adjust their behavior accordingly. The agile team will continue to adjust the team's organization, rules, normative, relationships, etc. The agile team knows the environment in which the team is constantly changing, and knows that in order to maintain the agility of the team, you must change with the environment. Conclusion Every software developer, the occupational goal of each development team is to give their employers and customers to deliver the most possible value. However, our project fails in a frustrating speed, or cannot deliver any value. Although the process method in the project is good, the expanded process method is at least responsible for our failure. The principles and values ​​of agile software development constitute a method that can help team breaking the process expansion cycle, this method is concerned about some simple technologies that can meet team goals.

转载请注明原文地址:https://www.9cbs.com/read-78609.html

New Post(0)