I am working on an automotive project that we are supposed to make more modular. I am a software guy and I have very little knowledge of automotive hardware.I dont have any requirements or details about the project other than "making it more modular/portable" and "think in terms of software not hardware". By making it more modular they mean that they want to be able to pick any car and replace its conventional battery or pump with a different type without having to redesign the entire system.
So far the only thing I have come up with is to seperate the system into two layers with the first layer having the general code that can be reused in all cars and the second layer has code specific to each component. Ofcourse I dont have the actual source code. I think I am required to produce a general software architecture that they can use for implementing all their systems. I dont have any other idea at the moment.
Any help, direction or source of information is appreciated.