Agile development [abstract]

xiaoxiao2021-03-06  14

From: http://www.vckbase.com/document/viewdoc/? Id = 1027

The interaction between agile developers and people is complicated, and their effects have become difficult to expect, but it is the most important aspect of work.

- Tom Demacro and Timothy Lister

Agile Software Development Declaration:

Individuals and interactions overhead the process and tools that can work better than the face-oriented document customer cooperation overcome the negotiations of contract negotiations

Although the right item is also valuable, we think the left item has greater value.

We must make customers satisfied with the early, sustained delivery of valuable software. Even later, it is also welcome to change demand. Agile process uses changes to create competitive advantages for customers. 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. During the development of the entire project, business people and developers must work together every day. Build a project around an individual that is embraced. Give them the required environment and support and trust them to complete the work. Inside the team, the most effectively transmitted information is the face-to-face conversation. Working software is the primary schedule metric. Agile process advocates sustainable development speed. Responsible persons, developers and users should be able to maintain a long-term, constant development speed. Continuously pay attention to excellent skills and good designs will enhance agility. Simple is the most fundamental. The best architecture, demand and design are from the self-organizing team. Every time, the team will make an anti-provision in how to work more effectively and then adjust their behavior accordingly.

When the software development is changed, the software design will have a bad way. When any of the smells appear in the software, it indicates that the software is corrupt.

Relinex: It is difficult to change the system because each change will force many other changes to the rest of the system. Vulnerability: The change of the system will cause problems in many places in the system and changes in the system. Solidity: It is difficult to unlock the system's entanglement, making it some components that can be used in other systems. Adhesive: Doing the right thing is difficult than doing mistakes. Unnecessary complexity: The design contains the infrastructure that does not have any direct benefits. Unnecessary repetition: The design contains repetitive structures, and the repeated structure can be unified using a single abstraction. Hiking: It is difficult to read, understand. Not well expressed.

The agile team relies on changes to get vitality. The team is hardly designed, so there is no need for a mature initial design. They are more willing to maintain design as clean, simple, and use many unit tests and acceptance tests. This maintains the flexibility of design and is easy to understand. The team uses this flexibility, continuously improves the design so that the system each iterative ends is most suitable for the designs of the iteration. In order to change the corrodation flavor in the above software design, agile development has taken the following face-to-object design principles to avoid, these principles are as follows:

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

New Post(0)