What is agile development and waterfall development

One: agile development (the embodiment of extreme programming thought)
agile development (AD: Agile Development) takes the evolution of users' needs as the core , and adopts iterative and step-by-step methods for software development. In agile development, a software project is divided into multiple sub-projects at the early stage of construction, and the results of each sub-project have been tested and have the characteristics of visibility, integration and operation. In other words, it is to divide a large project into multiple small projects that are connected with each other but can also run independently, and complete them separately. During this process, the software is always in a usable state.
Agile development is a new development mode that is produced in view of the disadvantages of the traditional waterfall development mode, and its goal is to improve development efficiency and responsiveness. In addition to principles and practices, patterns are also important, and studying patterns and their applications can give you a deeper understanding of agile development.
The following diagram briefly illustrates the key elements of agile development:

General drawing:

write picture description here
write picture description here

write picture description here

write picture description here

Agile Manifesto:

  •   Individuals and interactions over processes and tools
  •   Working software is better than comprehensive documentation
  •   Customer cooperation trumps contract negotiation
  •   Responding to change is better than following a plan

Principles of agile development:

  •   Our highest priority is to satisfy our customers through early, continuous delivery of valuable software.
  •   Even in the late stages of development, changing requirements are welcome. Agile processes use change to create a competitive advantage for customers.
  •   Deliver working software on a regular basis, with delivery intervals ranging from weeks to months, with shorter delivery intervals the better.
  •   During the entire project development period, business people and developers must work together on a daily basis.
  •   Build projects around motivated individuals. Give them the environment and support they need, and trust them to get the job done.
  •   The most effective and efficient way to convey information within a team is face-to-face conversation.
  •   Working software is the primary measure of progress.
  •   Agile processes promote sustainable development speeds. Owners, developers and users should be able to maintain a long-term, constant development speed.
  •   A constant focus on good skills and good design enhances agility.
  •   Simplicity is fundamental.
  •   The best architectures, requirements, and designs emerge from self-organizing teams.
  •   At regular intervals, teams reflect on how they can work more effectively and adjust their behavior accordingly

Two: Waterfall development (traditional development model)
Waterfall (WM: Waterfall Model) development is an old, outdated method of computer software development. The first software industry generally adopted this method, but this method is applied from traditional industrial production and is not suitable for the specific situation of computer software development.
Roughly divided into these stages: planning, requirements analysis, software design, program writing, software testing and operation and maintenance of six basic activities .
write picture description here

Personal experience:
The system that the landlord personally participates in is the project management system, which is the business management system of the construction enterprise. The business of construction companies is very complex and changing, and it is almost impossible to conduct a complete survey at one time. Therefore, using the traditional waterfall development model will bring a huge workload and prolong the project cycle. By adopting the agile development model, it is possible to communicate with the owner repeatedly and repeatedly on the business system in a timely manner, and to iterate several times in a small version, which can better ensure the quality and progress of the project execution.

Guess you like

Origin http://43.154.161.224:23101/article/api/json?id=324917220&siteId=291194637