I've been developing apps in one form or another for over 10 years now. From web to mobile apps, small agencies to large enterprises. I have the experience to help you in your journey.
Getting the functionality and features of your app written down are imperative to working with your developer.
When you are getting started on your app development project, and you're not a developer, you have a problem. How do you share the vision that you have in your mind, with your developer? The software industry has created/adopted documentation and visualization practices, but that doesn't mean that you, with the idea should have to learn them.
Keep on reading to get my thoughts of how I'd prefer someone with an app idea share those ideas with me as a developer.
First, a bit of history. If this gets too boring you can skip down to my two suggestions below.
I have a degree in computer science, from Utah State University. I spent a number of semesters learning the processes of UML diagrams. If you're interested in UML diagrams you can check them out here.
For a quick synopsis however, UML diagrams are a visual language to show different aspects of the software. This includes things like who will be using the software, and what will these users be allowed to do. They also include sequence, communication, class diagrams, and many more.
But here is the thing, they are for the developer to know how to use and reason about the app as it will be developed. You shouldn't have to spend any time learning this new visual language. In all honesty I don't think that I remember it well enough to get much use out of it my self.
It is more important for you to get your ideas down, in a shareable format, than meeting any documentation requirement that, more than likely, means little to you.
But, isn't there always a caveat, there should be some nice form to your thoughts. A way to be easily presented to help inform the discussion.
So, let's go on to the suggestions.
This is my recommendation for people that don't want to learn or use any new software. You can fire up you word or text editor and start doing a numbered outline.
While working on this outline, of number formatted topics, your views should be the main numbered topics. This will help the developer see right off the bat, how you plan on laying out your application. (This isn't exactly how the developer will actually work through the development process, but it is only to share your vision).
Underneath the main numbered content should be the functionality of that particular view. This will help show off what your main views are intended to accomplish.
This is my go to recommendation, it provides you with a nice graphical view of your thoughts. With some added features such as toggling views to focus on specific areas, exporting images, and richer annotations when wanted (but you can hide them out of the way when you don't need them).
The topic bubbles off the main bubble are for your main views, just like the numbered items on your text outline from above.
The direct children of those bubbles are for discussing how the views should work.
Looking at these two different options for you expressing your app idea, I hope that you can get a feel for what you'd like to work with the best.
Again, they aren't the industry standard, but a much simpler way for you to get started sharing your ideas with the developer that you pick.
Speaking about that, be sure to follow along for discussions about selecting a developer.