When choosing my thesis topic, I put a big emphasis on having the ability to incorporate both my university background and knowledge acquired from other activities into my work. The main goal was to create such a solution that not only promotes my own professional improvement and background, but also furthers the cause and efforts of others.
In today's automotive industry, a car's functions and general working conditions are provided by Electronic Control Units, of which more than a hundred could be present in a medium to upper price range vehicle. The complex mechanical solutions of the past are being replaced with software solutions. With such a huge amount of program code divided among control units, it getting obsolete before the average lifespan of a car is unavoidable. The causes can be as simple as bugs or faulty architecture and implementation, but the growing demand for aftermarket features also demands post-production update capability.
To fulfill the above requirements I have decided to design the architecture and implement a subset of components of a software update solution that is both fit for current and future demands. My goal was to achieve this in such a way that is both easily portable and reusable.
By examining the current solutions on the market, I have designed and implemented the software in accordance with the latest standards of the automotive industry, so I believe it meets the above requirements.
With the widespread introduction of solutions like this, manufacturer software updates can become more frequent, which makes the automotive products safer for the user, and by introducing platform-based design, the development cost reduction ultimately trickles down to the customer.