I can only describe how I do it, which I don’t know if it has a term or not.
First you break down what you are trying to accomplish, until you understand each and every step. Very time consuming, but its important to be able to visually see what you’re trying to accomplish. I use a whiteboard for segments, which are then transferred to paper, which is then arranged with all the other segments on the wall.
Once you can see the overview, you can begin to focus on the details, begin researching how to accomplish some of the details. Start with what you think are going to be the most difficult first, especially the ones you have no idea how to accomplish at all.
The above point is very important, as you don’t want to get 80% or even 100% of the way through and find that last 20% cannot be done or it cannot be sold in the app store because of some problem out of your control (unless you’re prepared to forgo the segment of the market who ONLY purchases from the App Store).
Edit: Example; Last year I created an animation and wanted to turn it into a macOS screensaver. The tool I used for the animation cannot be used to create macOS compatible screensavers, on research into using a tool that could, I checked how it could be distributed via the Mac App Store. The answer was that the Mac App Store prohibits the distribution of system compatible screen savers, so you’d have to re-invent the wheel and then potentially fight the built-in screen saver functionality and that’s if Apple don’t reject your screen saver for being “too limited in functionality”.
The next step is to prototype anything else that you’re not 100% sure of, for me this is UI. I often go through many iterations that end up looking nothing like my original designs.
The next step is a more complete prototype with the core functionality. Use it as much as possible in this state, it will reveal further issues in your designs or things that need to be done better. Build this as modular as possible, so parts that are you’re happy with can be used in the final product.
Slowly bring in more functionality. Monitor how the new functionality alters the design of your application and its UI.
Do not be afraid to reach out for early feedback or help. I honestly couldn’t build the apps I build without assistance from my dev friends. UI and UX is constantly my weak point (as well as spelling and grammar).
If you’ve reached a point where something isn’t right, but you’re trying to convince yourself that “its fine”, “its acceptable” or “its good enough”. Its time to ask for help.