How do I make sure that my software contribution is appropriately acknowledged?
It is generally not recommended to cite software through citation of a paper where the methodology was first introduced. The reason for this is that while the paper and method is peer-reviewed, the software is not. It also does not clarify what version of the software was used and does not allow for long-term availability of the generated data.
Instead: Publish your software itself, for example through the Journal of Open Research Software. This journal has a low barrier to publication, the software is peer-reviewed, and it will provide a paper with a DOI that you and others can cite. If your circumstances do not allow you to publish the full software under an open-source license, you should consider if it is possible to publish at least part of it - or consider further journals as mentioned here.
A citation of a software should contain author(s), name of the software, year of the release, version number, DOI rather than an URL as they are persistent.
I also have datasets on which my results are based. What about those?
The same holds for datasets. These can be published on Zenodo. Zenodo will provide you with a DOI that you and others can cite (also, if you do not want to submit a paper for your software, you should consider publishing your software on Zenodo to at least obtain a citable DOI).
You have invested a lot of time in your software - research and scientific software complement each other. Unfortunately, there is still a lack of recognition for software development. Please help to drive change by adhering to best practices and making your software contributions known! Also know that software from a repository under an open license must be cited - so if you make your software publicly available, you are likely to increase your number of citations and therefore your standard metrics and altmetrics.