Salmon migration model ZZ from mountain migration

Source: Internet
Author: User
Salmon Migration Model

Mr. Xiaohui from the Software Institute complained to a Chao that the software engineering course seemed easy and difficult to teach.

Xiao Hui said: I used to give lectures based on the classic waterfall model. I thought it would be a great building, but the actual situation is as follows:

  1. Demand Analysis: students do not know what the enterprise needs. They go to school and go to bed.
  2. Design phase: the students drew a lot of UML diagrams and used design tools to draw a lot of rectangular boxes.
  3. Implementation phase: the students started to discuss that the UML diagram had already been put aside.
  4. Stable stage: One of the students starts to write code, and others do not know what to do. The code is not working in most cases, and all the well-designed black box and white box tests cannot begin.
  5. Release Phase: This is only one day, the day of the last check, and someone else is debugging the program.
  6. Maintenance phase: the course is over, and students have no maintenance for their products. They have a holiday!

In the end, most of the students said they did not learn anything. next semester, a new group of students will come in and repeat this process...

In fact, a software engineer's career development in the real world seems to be the opposite of a waterfall:

  1. Graduated from the company and began to maintain some existing software (maintenance phase)
  2. Ability to change bugs in the project and release small-scale updates (stable/release phase)
  3. Responsible for rewriting a small module with no documentation and writing a lot of code (implementation phase)
  4. Have the opportunity to design relatively large modules and write some documents by yourself (design phase)
  5. Have the opportunity to talk to users about new projects (Demand Analysis)

Can software engineering courses be arranged like this? You can try this process:

  1. Start to maintain the programs developed by previous students and understand the programs.
  2. Find bugs, change bugs, and refactor a small part of code to meet your needs.
  3. Some developers can develop test cases.
  4. Incremental development based on existing versions
    1. Understanding requirements (What are customer requirements at this time)
    2. Design
    3. Development
    4. Regression testing (use the test cases developed above)

Xiao hui asked: What is this model?

A Chao said: Well, it looks like it is going from the bottom of the waterfall to the source step by step. It may be called the "salmon migration model"

Xiaohui knocked a few times on the computer and said: According to Zookeeper's translation, it should be called

Malaysia admires fish back to swim model?

A Chao fainted for a while and woke up and said: in the future, he would need to spend less time using failover. This model can be called

Salmon upstream model, or "salmon model" for short"

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.