Electronic Control Units (ECUs) are typically programmed using external programming devices - frequently called Diagnostic Testers. We propose a system and software architecture that requires no Diagnostic Tester for ECU (re)programming. ECU (re)programming is instead managed by an on-board software component, the Flashware-Reprogramming-Controller. It can reside in any ECU that has sufficient memory and processing power as well as good connectivity to internal networks and external sources from which to receive the software to be installed. Appropriate choices could be modern telematic devices. A second co-located on-board software component - the Installation-Configuration-Controller - is used to supervise the installation of new software releases and to validate their integrity after installation. The proposed architecture can be used for software download into ECUs in development, end-of-line production and after sales. It is also suitable for software download over the air, which may be relevant for future provisioning scenarios. To accommodate these diverse use cases, flashable software, or flashware, may be loaded from any choice of transmission medium, e.g., a CD or a USB memory stick, or via any choice of transmission network, such as WLAN, GSM or GPRS. We illustrate the advantages of the new architecture using an OSGi-based prototype.