See it as a software program that will create its own extra code with each software development cycle. You start it up, the program adds some extra code in the source code and compiles and sees whether it still works, i.e. whether the extended program can still add code and be complied into a working program that can add automatically to the source code and then compiles, etc.
That's not how software development works. When software designers pull bits and pieces from other programs as units, combine and mix them, or come up with completely novel code. Their iterations need not produce a nested hierarchy.
This is not what we see in life. We do not see wholesale swapping of design units across designs like we do with software development. Instead, we see a nested hierarchy, the very opposite of what we would expect from a design paradigm.
Even more, it is the physical characteristics of DNA that carry information. For example, stem-loop structures can form in DNA and control transcription. The physical interactions with DNA and transcription factors can control embryonic development. This just doesn't happen with software. Software code does not physically react with itself to produce tertiary structures.
Quite frankly, software does not have a lot in common with DNA.