improved rules and some work on the findSoftware... method