Creating software is easy, it's the designing of it that is difficult. Before we can develop an API, we need a mapping from the domain to software objects. This usually starts with something hand drawn, but eventually it will be helpful to encode in some format from which DDL and other code can be generated. That way we don't need to spend our time writing boilerplate nonsense.
Here are some modeling tools that have free versions:
Creating software is easy, it's the designing of it that is difficult. Before we can develop an API, we need a mapping from the domain to software objects. This usually starts with something hand drawn, but eventually it will be helpful to encode in some format from which DDL and other code can be generated. That way we don't need to spend our time writing boilerplate nonsense.
Here are some modeling tools that have free versions:
http://www.viev.com/index.php
https://en.wikipedia.org/wiki/Comparison_of_data_modeling_tools
... and many many more I'm sure.
One that I like is this javascript based web thingee:
https://github.com/ondras/wwwsqldesigner