Warning, lots of possibly BS House-rule ranting ahead.
Honestly, I think that you should just roll Logic plus skill for each hacking task, and each program has to be bought at Rating X. Make X a number that satisfies the GM's need for hackers to spend money. 4 or 5 is probably good. This Rating determines the cost, but is the same for all programs and modifies nothing. Instead, this is just the cost of that program, and how well it does is based on the skils of the hacker, who is assumed to modify it to meet his/her needs. That way, Program rating doesn't matter. You just buy the programs and drop the Rating from what you write.
Then, you can add Program Options to your programs, and expand the program options list massively. Make it possible to have different versions of a program that modify tests in certain ways, like a Biofeedback Filter that has +1 against Black Hammer, but -1 against Blackout, or Armor that has +1 if you are fighting Cybercombat against a "gun" icon (in other words, the reality filter or natural iconography matters). It makes rolling dice simpler, which is nice, and makes hackers better at their jobs without having to spend fortunes on things. It also really makes Logic boosting wares nice for EVERYONE, and enables anyone to pick up a comm and default on hacking tests with a decent dice pool of they have good logic, which makes sense since almost everyone in the Shadowrun world is supposed to have at least SOME familiarity with the Matrix. If they don't, OTOH, it can probably be a negative quality that penalizes Hacking and is notable about the character.
For program degradation, simply impose a cumulative -1 penalty to associated actions as the program becomes out of date, and the usual maintenance or costs gets rid of it.
Keep Ratings for things like IC and Agents, as it makes sense for them, and let their Ratings go to X, where X is the highest number the GM is comfortable with someone having. That corporate black database? Yeah, it has Rating 9 Black IC. Have fun! Their Rating will be their Attribute, and the skill can either be Rating, or the hits on some kind of software design test can be the skill Rating.