A computer virus is called a virus, but not bacteria since they gained some “features” of a virus, and a successful of virus is regarded as an disaster of human beings. I summarized some points that should be included for a computer virus.
Multiply, In order the spread out the virus, the virus should be able to spread out through internet or phone, just like a cold to spread out in air. The traditional virus like AIDS can only be spread through sexual intercourse or blood which is regarded as an failure of virus, the same situation applied to some old virus which can only be attached to I/O like floppy.
Mutation, a mutation is regarded as a must in the real world, however computer virus require AI for this feature. Which seems to be very difficult, huh? If a virus can mutate from time to time, the possibility of being recognized by doctor or anit-virus software can be reduced.
Multi host, just like a flu, we can see that it can infect man kind, dog, chicken…… so, the ability to attach the virus in multiple platform (OS) and multiple instruction set architecture (ISA) is the future of virus.
Message, any virus itself carry some meaningful message, for example: the stupidity of human being. I pretty sure that, it is the one and only one message carried by all virus. So a virus creator should also stick to this rule.
To construct a perfect virus like flu+AIDS is very difficult technically. A super virus should have the ability for writing another virus which is stronger than himself, with inherit the ability of writing another virus. Err…… if mutation of an virus is possible than the virtual world will be ruled by computer itself.