Compare the advantages and disadvantages of the waterfall model, rapid prototyping model, incremental model and the spiral model, explain the scope of each model.

Software Process Model Points advantage Shortcoming Scope
Waterfall model Each stage has a document output Document-driven and orderly method Only by understanding product documentation, deliver products may not meet the requirements of customers Project cycle is shorter. Demand is unpredictable , software implementation is mature;
Rapid prototyping model Without feedback loop, a linear order, a nature of " fast " Ensure delivery of products in line with customer requirements It has not proved invulnerable No complete description of the requirements , only some basic requirements
Incremental model Each increment was released a workable product Early increase return on investment, can in a short period of time, providing initial product can be done part of the work to the user; Higher demands to open structure , could degenerate into construction - repair model Frequent changes in demand , the number of developers is not enough
Spiral Model Emphasis on risk analysis (Rapid Prototyping + waterfall model) + Risk Analysis All models of the binding properties of the above, the risk of driving Development costs , can only be used for large-scale in-house software product, the developer must be proficient in risk analysis and risk exclusion Suitable for large, complex and have a high risk of the system.
Fountain model Gapless Various stages no clear boundaries, developers can develop simultaneously. It is not conducive to project management more difficult, demanding document management, making increased audit Suitable for object-oriented software development process.
Rational Unified Process (RUP) Iterations to architecture -centric, use case-driven approach to software development. Four phases: an initial phase, the elaboration phase, the construction phase, transition phase For all critical development activities to provide the necessary guidelines for the development of each member, templates and guidance tools, and to ensure that all members share the same knowledge base. Simple and clear process structure, providing greater versatility for the development process. The lack of details about aspects of the operation and support of the software, do not support the development of multi-project structure, which reduces a wide range achieved in the development organization to a certain extent on the reuse possibilities. The demand for large complex software systems evolving project.
Extreme Programming Agile processes of (XP) Agile development to user needs evolve as the core, adopt an iterative, step by step method of software development. Extreme Programming (XP) is an agile process, the most famous one High adaptability to people-oriented, test-driven Agility focus on communication staff, the importance of the document ignored, if the project is too large staff turnover, and gave maintenance to bring a lot more difficult, there are special projects novice relatively long time, older employees more tired. Strong experience of the people there need a project, the project is not easy to encounter bottlenecks.
Microsoft Process Every life cycle publish a progressive version, each life cycle lasts quickly iterative loop Combines the advantages of the Rational Unified Process and Agile processes On aspects of the methods, tools and products not comprehensive enough Suitable for development with limited resources and limited time constraints of the project in a commercial environment.
Published 21 original articles · won praise 0 · Views 379

Guess you like

Origin blog.csdn.net/qq_41800649/article/details/104650656