Software modeling in XOJO

I am curious to know how the more experienced or professional developers here approach the design and engineering of a new program coded with XOJO?

For example, do you use something like UML https://en.wikipedia.org/wiki/Unified_Modeling_Language or use a less formal approach?

a nice graph tool
www.yworks.com/yed-live/

the problem is if you change your source code the uml or documentation is outdated.

first you need to think about what you need and if you can achieve this.
example you need 3D or barcode reader, web app or nativ at mobile phones / desktop enviroment, what kind of database.
online or offline mode. that worries me. there are a lot of features that will let you puzzle.

for myself if i have a new idea sometimes i made a small mind map.
in the ide first i add all empty classes that i need out of mind.
and sure i will reuse source code that had established.
if i have a complex class i write remarks first what i want and then i write the methods one by one.
software grows so some projects get adult age.

all-important is the correct order of your to do list.
do not start with the ui if you not have the database design finished.
make every effort if you make something new because searching and fixing bugs will take a lot more time.
do not work sloppily and bring your task to an end.

I’ve used Cubetto to help through some more complex models. Available on mac and iOS stores. One limitation is that it can’t print out - you have to model onscreen all the time.