As I already explained many times, the correct aproach to applying TRIZ to Software Engineering is ... not to apply it per se but apply its ideology (a kind of IFR, if you will). One makes no good to software engineering when searches for software "analogs" to 40 Principles. The correct way is to accumulate detailed accounts of programs/algorithms design and extract software design principles from these accounts.
I started this work in the mid 1970s and by 1980 discovered a number of Principles of software engineering, which outlined in various manuscripts submitted to the various committees at Moscow State University, Computing Center of the USSR Academy of Sciences, etc.
Unfortunately, the Custom officers did not allow me to sneak these manuscripts out of the USSR when I was leaving it in 1990 and I thought that they were lost forever. To my surprise I recently discovered one of them on the internet. That was the one that I sent to Prof. Ershov in 1979. The Prof. died in 1988 having not replied to me but the Russian Academy of Sciences established a Fund after his name and posted on the internet all documents he ever received. So enjoy the manuscript at http://ershov.iis.nsk.su/archive/eaindex.asp?pplid=610&did=34723 . The only nuisance is that it is a potpourri of my other manuscripts and as such is not the best one. The language is Russian, of course. But may be the tab "English" on the Fund's web site can help with the latter problem.