I think the difference of opinion regarding the computers is easily sorted out.
147 computers are multiplexed on the CAN (Control Area Network) and communicate on high and low speed data systems.
The check engine warning is controlled by the engine management computer (motronic ecu) this control unit is responsible for detecting errors within the fuel injection system.
If the engine ecu detects a fault, it will input this into the CAN network which will thereby cause the fault message to be displayed on the instrument panel.
This fault can be either present or intermittent, if the fault is only a temporary one and the system detects that it is again able to work within its parameters- the warning will be removed but the fault will remain stored in the engine ecu memory.
If the fault is a continuous one that affects the operation of the fuel injection or ignition system the warning will remain displayed until the fault is repaired and the system is reset.
It would be impossible to know what the fault is unless the vehicle was connected to the diagnostic computer and fault memories extracted.
There is a book of EOBD fault codes which can cause the light to come on- your odds of guessing the correct fault would be similar to picking lottery numbers!
The main issue is that the body control computer cannot initialize engine management system faults and does not adapt to them (fuel etc) or store any information about what causes them.
This information is processed and stored within the engine management ecu, which in this case should be checked out by a dealer with the appropriate diagnostic equipment.
Although the problem may not be serious, it should be checked promptly as without proper diagnosis and repair there is a risk that certain faults could cause further damage to the vehicle(eg. to catalytic convertors)and the vehicle may not comply with exhaust emission regulations.