software development model

Waterfall Model:

The waterfall model strictly follows the pre-planned sequence of requirements analysis, design, coding, integration, testing, and maintenance.

The waterfall model uses the results achieved at each step as a method of measuring progress; because of its strict hierarchy, it is not feasible when the requirements are unclear at the early stage of the project or when the requirements are frequently changed.

Therefore, in the early stage of development, the more perfect the requirement design is, the less the loss will be.

Iterative development:

Iterative development values ​​design and complete only one part of the product at a time, iterating incrementally until the entire product is complete.

Each design and implementation is an iteration. Each iteration includes requirements analysis, design, implementation and testing .

 

Advantages of this development mode:

  1. Reduce risk

  2. Get early user feedback ( get user feedback to revise the requirements, and then proceed to the next iteration )

3. Continuous testing and integration

  4. Improve reusability

 

Spiral Development:

Core model:

( 1 ) Develop a plan: determine the goal of the product, design and select an implementation plan, and clarify the constraints of project development; 

  ( 2 ) Risk analysis: analyze and evaluate the selected scheme, and consider how to identify and eliminate risks; 

  ( 3 ) Implementation engineering: implementation of product development; 

( 4 ) Customer evaluation: Evaluate the development work, put forward revision suggestions, and formulate next-step plans. 

 

The Spiral Model must be preceded by a risk assessment prior to each stage and recurring cycles.

Overall: The Spiral Model is a risk-driven methodology.

 

Agile software development:

 

The agile model emphasizes that the team of programmers should work as a whole in short iteration cycles and deliver certain results. And in this one, it pays more attention to the trust and communication between people, and needs to be adaptable ( adaptive ) .

When project requirements change, teams should adapt quickly to changes; a high degree of collaboration is required within the team.

 

Guess you like

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