What defines the interaction between CPU, Memory and I/O parts?
A microarchitecture is a high-level description (in contrast to a hardware-description or circuit-level) of an implementation of an ISA. This includes how instruction bytes get fetched, how many decorders there are and what instructions each can decode, how many functional units there are and for which instructions, the cache hierarchy, how all of these units are connected to each other, and it may also include the number of cores or hardware threads and how they interact with each other and what resources are shared between them. 

Main memory and I/O devices are not part of the microarchitecture, but the microarchitecture description includes how it interfaces with components of the system. The term architecture is used to either refer to only an ISA or to both an ISA and a microarchitecture that implements it, depending on the context. Therefore, it also specifies how to communicate with memory and I/O devices, but only in terms of instructions and addresses. You can use the term computer or computer system to refer to the image you've attached. The term CPU may refer to either a single core, a multi-core processor design, or a physical processor package (which may include the DMA and interrupt controllers shown in the image).