I've came accross this concept several times and did not find a clear explanation. What is it? What has it to do with programming? What has it to do with what we (software engineeers / programmers) call architecture? How can it help me? How can I put this to work for me? How is the professional that best understand this subject called?
It's a concept dual to systems architecture, except the approach is centered on information itself, not on the system that processes the information.