Any Peoplesoft Developer who used and debugged code calling component interfaces might understand what really is a CI, but, from my experiments, a lot of people do not understand the CI concept at all, especially non-thecnical (BAs, PMs) resources. They think it is something coded, which emulates online and executes ALL peoplecode such as if a user would navigate throught the Component and Pages within Peoplesoft.
I found it complicated to explain to those people the scope of a Component Interface. It is simply a LAYER around a Component to be able to call it from Peoplecode so online rules apply ALMOST such as when a user navigates online.
I was trying to explain it to my PM who thought she understood the concept but the message would definetely not pass. Back home, I got a revelation. I saw my Polaroid Cube (kind of GO PRO camera) inside its camera case. See below
The Polaroid Cube camera is very primitive. It has only one button; 3 seconds press for on/off, 1 click for a picture, 2 quick cliks to start or stop recording a video. It also has a powerful magnet under, to be fixed easily on an ironned surface.
The case is as primitive as the camera. It is transparent so the camera can film/take pictures. It has one push button that transmits the push action to the camera. It can be locked so water does not access to the camera, and has a mounting adaptor, to be fixed to mounts (bike mount, helmet mount, suction mount).
If we think about it, the case allow the user to use some of the camera's functionalities underwater : turn on, turn off, start recording, stop recording, take a picture. Some functionalities do not work with the case, such as the magnet mount, charge the camera or remove the SD card. However, new functionalities are available, such as the mounting adaptor.
So, my conclusion is : the Component Interface is at the Component what the Case is at the Camera.