How to map product functionality

At a start of a project, what is the best way to map out all the functionalities of a product? For example, an app?

I've considered a Gantt chart, but I need something more "agile".

What are the best practices? Any advice from professionals? Do you use pen and paper, post-its, or software?