SAM is very powerful. To your point, not all applications are as basic as knowing that Windows NT services are running. You can monitor processes, app pools, sites, perf counters, tcp ports, event logs, and so on. I'd strongly recommend getting familiar with building application templates. They are reusable logical groupings of components. I tend to name mine after the application I'm monitoring (e.g. "Application A Services and Ports"). One of my favorite things about SolarWinds vs. some other solutions is the ability to easily integrate PowerShell scripts. So yes, there are tons of options available to you for all types of software monitoring.
There are some good training resources out there too.
To validate that a program is doing what it is supposed to you usually need to find a way to test that you can access the app and get some kind of expected response. Some apps are entirely GUI driven which basically leaves you helpless, but anything with any kind of API, CLI, or some other scheme where we could programmatically hit the application to confirm it is responding appropriately is fair game. In many cases even if you think the only way to use the app is through the GUI then if you contact the vendor they are often able to let you know about back door debug type interfaces you can throw commands at and get responses from to validate that the program is working.
If there is really no way for you to know that the app is working except to log into a machine and click around in the desktop inside some win32 style application interface then SAM isn't equipped to emulate that, but it is not win2k anymore and the list of applications that only work that way gets shorter every day.