Originally Posted by Hornet_Rider
So what are we coding exactly? Just the I-Drive interface?
Very interesting question.
BMW has organized the complete car into sections, features and add ons. Each of them is called a module. Physical interconnection between a module and the vehicle are pre-defined by BMW. To make the entire car system workable and to take care of future additions and deletions, a system of rules are defined and to add the flexibility to the operation, each module is provided by certain configurable parameters. What we are doing in coding is accessing these modules parameters and adjusting their values.
We have very limited information about the functioning of all the parameters but many have tried to study them by experimenting them and then the successful combination of parameters with their values for a function are listed in so called cheet sheets. Coders can look at the sheet and determine what function they want to achieve and can look at the changed values. Making these parametric changes to CIC logic is called coding.