The waterfall is a systematic technique for designing applications, such that it can be very linear much of the time. The creation of apps is done as a single project. Agile is a relatively robust approach that requires improvements to be made to the criteria for project implementation even though the original preparation has been finished. So it completely depends on the requirement of your software project.