Besides using Software Distribution to install software, you can do this using a Task Sequence too. This can be done during and Operating System Deployment process or not.
Usually, I install software during an OSD. For this, you must have a package for that software product (of course) and at least one program that runs silently. If the program requires user intervention, you will not have the possibility to add it to your TS. I hope you know the fact that the package should exist on a Distribution Point.
This is how one of my simplest TSs looks like:
To add an Install Software step, in your TS click Add from the menu and select General – Install Software.
Then, type a name for this step and using the Browse button select a package to add the TS. Remember that you can only add packages that has a program to run without user intervention.
I find it useful to have a step to install latest updates after all install software steps.
One more way to install software using a TS, is to have only Install Software steps. This way, you can install multiple software products using one advertisement instead of advertising every package. I use this only when I have an OS installed and I want to install software on it.
This is how such a TS looks like: