08.01.2013 Views

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

SHOW MORE
SHOW LESS

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

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!