Ulrik Eklund_Volvo Cars IT University.pdf - Lindholmen Science Park
Ulrik Eklund_Volvo Cars IT University.pdf - Lindholmen Science Park
Ulrik Eklund_Volvo Cars IT University.pdf - Lindholmen Science Park
You also want an ePaper? Increase the reach of your titles
YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.
Binary size [Mbyte]<br />
500<br />
450<br />
400<br />
350<br />
300<br />
250<br />
200<br />
150<br />
100<br />
50<br />
The future of automotive<br />
software engineering<br />
<strong>Ulrik</strong> <strong>Eklund</strong><br />
<strong>Volvo</strong> Car Corporation / <strong>IT</strong> <strong>University</strong><br />
ulrik.eklund@ituniv.se<br />
<strong>Lindholmen</strong> software development day<br />
2010-10-22<br />
This is the (near) future<br />
S/W size in new car models<br />
Meego<br />
infotainment<br />
binary<br />
Graphic<br />
infotainment with<br />
integrated GPS<br />
0<br />
1998 2000 2002 2004 2006 2008 2010 2012 2014<br />
Year<br />
Vehicle Infotainment<br />
Connected car +<br />
fully graphic HMI<br />
Safety and<br />
driver support<br />
1
Software processes & timing<br />
• Vehicle manufacturers tend to use the same mindset for mechanical<br />
design and software design<br />
• A car project has a lead time of about 30 months<br />
– From the decision what to build until first car rolls off the manufacturing line<br />
– Deciding what to build takes up to 18 months in addition to this<br />
– Stage-gate processes<br />
• Current trends for the mechanical vehicle design<br />
– Shortening lead times < 30 months<br />
– ”front load” the design work and freezing blueprints early<br />
– Lean, but not agile<br />
• That software follows the same principle is “natural”<br />
Software process constraints<br />
• ISO 26262 – Functional safety, road<br />
vehicles<br />
– Will be mandatory for everybody<br />
developing safety-critical automotive<br />
software<br />
– No major impact on mature S/W<br />
developers<br />
2
• Standardisation<br />
Coping strategies<br />
• Model-driven development<br />
• Design information databases<br />
• Architecture<br />
Standardisation<br />
• Standardised functional interfaces is seen as the<br />
solution to<br />
– Integration<br />
– Minimise engineering work, by reuse<br />
– Launching new products based on existing solutions<br />
• Proprietary standardisation (across vehicle lines)<br />
– Ford motor Company, started with re-using power packs<br />
• “Public”<br />
– J1939 (mostly commercial vehicles)<br />
– AUTOSAR Application interfaces<br />
3
Model-driven development<br />
• Traditionally: Software is developed by suppliers<br />
• Trend: Car manufacturers increases software development of key<br />
features in-house<br />
– But not by writing code<br />
– Models as the implementation = code generation<br />
– Enables domain experts to do code<br />
– Primary drivers are quality and early V&V, cost is a nice side benefit<br />
– The OEM ”owns” the important stuff<br />
• Average cost savings of 27%, lead-time savings of 36%<br />
– Highly dependent on experience, varies up to 10%<br />
• 60% more detected errors in design phase compared to classical<br />
development<br />
Model-driven development<br />
• The following is usually not code-generated<br />
– Safety critical functions, because of lack of trust in tools<br />
– Relatively small enhancements of existing classically<br />
developed functions<br />
– Functions for which the know-how is at the supplier<br />
– At suppliers classical coding is still norm<br />
– Functions in the Infotainment system area! (
Design information databases<br />
• Going from paper specifications to databases<br />
– Several tools are already in use<br />
– Strong support for<br />
• maintaining relationship between design information<br />
• instantiate a specific design variant in a product<br />
• version control<br />
– Poor on presenting information<br />
• Little graphical representation<br />
Architecture<br />
• Disparate view on what architecture is:<br />
– Architecture = Design of network topology, i.e. use of<br />
communication protocols and electronic control units (ECUs)<br />
or<br />
– Architecture = Standardisation of interfaces<br />
• Sometimes together with model-driven development<br />
• Network signal databases<br />
or<br />
– Architecture = Stakeholder analysis, quality attributes, and view &<br />
viewpoints (mainly logical)<br />
or<br />
– Architecture = AUTOSAR and/or other architectural platforms<br />
or<br />
– All of the above<br />
5
Architecture platform<br />
• AUTOSAR<br />
– component-based architecture<br />
– component templates in XML<br />
– associated methodology and tool-chain<br />
– Basic software components & interfaces<br />
defined<br />
– Not focusing on infotainment<br />
– Already in use, e.g. on some BMW ECUs<br />
Infotainment architecture<br />
platforms<br />
• Windows Embedded Automotive 7<br />
– Used by Ford Sync, Fiat Blue&Me, and Kia<br />
– Support for HMI development tools, speech recognition, mobile<br />
device integration and several connected services<br />
• MeeGo<br />
– Linux-based architecture for various applications, e.g. handhelds,<br />
netbooks, in-vehicle infotainment<br />
– Development toolkit, sample navi, voice and data connectivity,<br />
telephone stack, Bluetooth, media frameworks and file system<br />
included in v. 1.0<br />
– “Android for Infotainment”<br />
• GENIVI<br />
– Alliance for developing standard solutions for infotainment<br />
– Linux-based<br />
– Probably based on Meego architecture<br />
6
Trends not seen (yet?)<br />
• ”Openness”<br />
– Manufacturers still decides what services<br />
goes into the car, e.g. Spotify<br />
– No production vehicle software released as<br />
open source<br />
• Agile development<br />
Summary<br />
• Software in vehicles increases dramatically: Size, features,<br />
ECUs, …<br />
• There is no consensus in how to deal with this, but some<br />
strategies are<br />
– Standardisation of interfaces<br />
– Model-driven development<br />
– Design information databases<br />
– Architecture (whatever that is)<br />
• Vehicle companies still see themselves as manufacturing<br />
products<br />
– Not software developers<br />
– Slow adopters of current software engineering ”trends”<br />
7
More information<br />
• General overviews<br />
– Fabbrini, F., Fusani, M., Lami, G., & Sivera, E. (2008). Software Engineering in the European<br />
Automotive Industry: Achievements and Challenges. In Computer Software and Applications, (pp.<br />
1039-1044). doi:10.1109/COMPSAC.2008.140<br />
– Krüger, I. (2010). Opinion: An Outlook on Automotive Software. IEEE Embedded Systems Letters,<br />
IEEE Embed. Syst. Lett. (USA), 2(1), 14-15. Retrieved from<br />
http://dx.doi.org/10.1109/LES.2010.2047079<br />
– Pretschner, A., Broy, M., Krüger, I. H., & Stauner, T. (2007). Software Engineering for Automotive<br />
Systems: A Roadmap. In 2007 Future of Software Engineering (pp. 55-71). Presented at the<br />
International Conference on Software Engineering, IEEE Computer Society. Retrieved from<br />
http://portal.acm.org/citation.cfm?id=1253532.1254710<br />
– Sangiovanni-Vincentelli, A., & Di Natale, M. (2007). Embedded System Design for Automotive<br />
Applications. Computer, 40(10), 42-51. doi:10.1109/MC.2007.344<br />
• Driver support and safety features<br />
– Dan Nilsson. (2010, October 10). Google testar förarlös bil. Svenska Dagbladet. Stockholm, Sweden.<br />
Retrieved from http://www.svd.se/naringsliv/motor/google-testar-forarlos-bil_5485569.svd<br />
8
More information<br />
• Connected car<br />
– Automotive technology: The connected car. (2009 June 4). The Economist,<br />
http://www.economist.com/sciencetechnology/tq/displayStory.cfm?story_id=13725743<br />
– Dedicated Short Range Communication (DSRC): CEN 12253,12795, 12834,13372 & ISO 14906<br />
– ICT Results. (2009). Download, install and drive – the future of automotive software. ICT Results,<br />
http://cordis.europa.eu/ictresults/index.cfm/section/news/tpl/article/BrowsingType/Features/ID/90412<br />
– Smethurst, G. (2010). Changing the In-Vehicle Infotaiment Landscape. GENIVI Alliance,<br />
http://www.genivi.org/portals/9/documents/GENIVI%20White%20Paper%20-<br />
%20Changing%20the%20IVI%20Landscale.<strong>pdf</strong><br />
• Standardised software interfaces<br />
– A. Tsakiris, (2010). Managing Software Interfaces of On-Board Automotive Controllers. Conference<br />
presentation presented at the SATURN,<br />
http://www.sei.cmu.edu/library/abstracts/presentations/tsakirissaturn2010.cfm?WT.DCSext.abstractsource=RelatedLinks<br />
– AUTOSAR application interfaces,<br />
http://www.autosar.org/index.php?p=3&up=1&up=1&uup=6&uuup=0&uuuup=0&uuuuup=0<br />
– J1939 Recommended Practice for a Serial Control and Communications Vehicle Network,<br />
http://www.sae.org/standardsdev/groundvehicle/j1939a.htm<br />
• Automotive software processes<br />
– ISO/IEC 15504 Software Process Improvement and Capability Determination (SPICE)<br />
– ISO 26262 Road vehicles -- Functional safety (forthcoming)<br />
More information<br />
• Model-based development<br />
– Dr. Jens Zimmermann & Sascha Kirstan (2010), “Costs and benefits of model-based development of<br />
embedded software systems in the automotive domain”, http://www.altran.de/index.php/en/m-tec/mnews/m-news-downloads<br />
– Broy, M., Feilkas, M., Herrmannsdoerfer, M., Merenda, S., & Ratiu, D. (2010). Seamless Model-<br />
Based Development: From Isolated Tools to Integrated Model Engineering Environments.<br />
Proceedings of the IEEE, Proc. IEEE (USA), 98(4), 526-45. Retrieved from<br />
http://dx.doi.org/10.1109/JPROC.2009.2037771<br />
• Design data management tools<br />
– Vector eASEE Automotive Solution - System Data Management,<br />
http://www.vector.com/vi_easee_sdm_en.html<br />
– Systemite SystemWeaver, http://systemite.se/content/products-services/systemweaver-concept<br />
• Domain specific langauges and tools<br />
– Simulink for AUTOSAR, http://www.mathworks.com/automotive/standards/autosar.html<br />
– Da Vinci developer, http://www.vector.com/vi_davinci_developer_en,,223.html<br />
– Aquintos PreVision, http://www.aquintos.com/index.php?page=464<br />
– EAST-ADL2, http://www.atesst.org/<br />
9
More information<br />
• Software architecture in automotive<br />
– Broy, M., Gleirscher, M., Merenda, S., Wild, D., Kluge, P., & Krenzer, W. (2009). Toward a holistic<br />
and standardized automotive architecture description. Computer, 42(12), 98-101. Retrieved from<br />
http://dx.doi.org/10.1109/MC.2009.413<br />
– Gustavsson, H., & <strong>Eklund</strong>, U. (2010). Architecting Automotive Product Lines: Industrial Practice. In<br />
Software Product Lines: Going Beyond, Lecture Notes in Computer <strong>Science</strong> (Vol. 6287, pp. 92-105).<br />
Presented at the Software Product Line Conference, Jeju, South Korea: Springer. doi:10.1007/978-3-<br />
642-15579-6_7<br />
– Hans Grönniger, Jochen Hartmann, Holger Krahn, Stefan Kriebel, Lutz Rothhardt, & Bernhard<br />
Rumpe. (2008). View-Centric Modeling of Automotive Logical Architectures. Presented at the<br />
Tagungsband des Dagstuhl-Workshop MBEES: Modellbasierte Entwicklung eingebetteter Systeme<br />
IV, TU Braunschweig.<br />
• Architecture platforms<br />
– AUTOSAR, http://www.autosar.org<br />
– Windows Embedded Automotive 7, http://www.microsoft.com/windowsembedded/enus/products/windows-embedded-automotive/default.mspx<br />
– Ford Sync, http://www.fordvehicles.com/technology/sync/<br />
– Meego, http://www.meego.com<br />
– GENIVI, http://www.genivi.org<br />
10