重写的waterfall基本逻辑