Hmmm...
Ha az autó=program egésze fileformátumokkal, stb, akkor
Motor: bináris program.
Kaszni, kormány, pedálok stb.: gui.
Benzin, olaj, fagyálló: bemeneti fájl.
Kipufogógáz: kimeneti fájl.
Szóval, te azt akarod, hogy a benzin, olaj, kipufogógáz összetételének vázlatát pontosan leírják. Tehát amolyan ha x liter 95-ös mol benzin + y liter mobile 1 motorolaj, akkor CO2=z m3, stb... Ez rendben is volna, ha a kimeneti fájlt nem akarnánk tovább használni, mint ahogy az autók sem használják fel újra a kipufogógázokat.
Tételezzük fel, hogy jön egy autógyártó, aki kitalálja, hogy lehet újrahasznosítani a kipufogógázt. Ehhez az kell, hogy beszereljenek egy modult, amiben a folyamat végbemegy. És nem mindegy, hogy milyen lesz a kipufogógáz összetétele. Nyilván, a gyártó autóiban úgy lesz legyártva a motor, hogy jó gázt állítson elő. De a konkurencia autói más összetételű gázt állítanak elő. Ha én meg akarom tartani a technológiát magamnak, akkor mindent megteszek azért, hogy a versenytársak ne jussanak hozzá a motor gyártástechnológiájához és beállításaihoz. Még a végén ők is fel tudnák használni a kipufogógázt.
És ma a szoftveriparban pontosan ez megy...