Abstract
The increasing volume of software in vehicles makes robustness a significant quality attribute. In this paper, we investigate the use of Design by Contract to improve the robustness of existing AUTOSAR software components. The main idea of DbC is to view the relationship between two components as a formal contract that expresses component’s rights and obligations.
The proposed solution is validated by testing both the original and modified components and by comparing the results. The results prove that Design by Contract greatly increases the robustness of AUTOSAR software components: none of the tests for the modified software components failed. We also identified some weaknesses of the proposed approach, such as (i) potential additional errors brought by the newly-built components, and (ii) difficulty in modifying components that are automatically generated through some model-to-code generation tools.
This is a preview of subscription content, log in via an institution.
Buying options
Tax calculation will be finalised at checkout
Purchases are for personal use only
Learn about institutional subscriptionsNotes
- 1.
- 2.
- 3.
In the considered components there was no need for invariant checks. As the functioning of the invariant component is similar to the functioning of the functions in the pre-condition and post-condition components, this will not affect the evaluation of our solution. In the AUTOSAR software components of other projects or applications, there are structures or types. Therefore, invariant component can be used in those software components though it is not used here.
- 4.
- 5.
These values should not really come in real environments.
References
Fleming, B.: An overview of advances in automotive electronics [automotive electronics]. IEEE Veh. Technol. Mag. 9(1), 4–9 (2014)
Knauss, E., Pelliccione, P., Heldal, R., Ågren, M., Hellman, S., Maniette, D.: Continuous integration beyond the team: a tooling perspective on challenges in the automotive industry. In: Proceedings of ESEM 2016. ACM (2016)
Pelliccione, P., Knauss, E., Heldal, R., Ågren, S.M., Mallozzi, P., Alminger, A., Borgentun, D.: Automotive architecture framework: the experience of volvo cars. J. Syst. Architect. 77, 83–100 (2017). http://www.sciencedirect.com/science/article/pii/S1383762117300954
AUTOSAR, Autosar technical overview v2.2.2 (2012)
Meyer, B.: Object-Oriented Software Construction, 1st edn. Prentice-Hall Inc., Upper Saddle River (1988)
Meyer, B.: Design by contract, Technical report TR-EI-12/CO, Interactive Software Engineering Inc. (1986)
Meyer, B.: Applying “design by contract”. Computer 25(10), 40–51 (1992)
Araujo, W., Briand, L.C., Labiche, Y.: Enabling the runtime assertion checking of concurrent contracts for the java modeling language. In: Proceedings of the 33rd International Conference on Software Engineering, ICSE 2011, pp. 786–795. ACM, New York (2011)
Araujo, W., Briand, L.C., Labiche, Y.: On the effectiveness of contracts as test oracles in the detection and diagnosis of functional faults in concurrent object-oriented software. IEEE Trans. Software Eng. 40(10), 971–992 (2014)
Liu, Y., Cunningham, H.C.: Software component specification using design by contract. In: Proceeding of the South-East Software Engineering Conference. Tennessee Valley Chapter. National Defense Industry Association (2002)
Cheon, Y., Leavens, G., Sitaraman, M., Edwards, S.: Model variables: cleanly supporting abstraction in design by contract. Softw. Pract. Experience 35(6), 583–599 (2005)
Thüm, T., Schaefer, I., Kuhlemann, M., Apel, S., Saake, G.: Applying design by contract to feature-oriented programming. In: Lara, J., Zisman, A. (eds.) FASE 2012. LNCS, vol. 7212, pp. 255–269. Springer, Heidelberg (2012). doi:10.1007/978-3-642-28872-2_18
Benveniste, A., Caillaud, B., Nickovic, D., Passerone, R., Raclet, J.-B., Reinkemeier, P., Sangiovanni-Vincentelli, A., Damm, W., Henzinger, T., Larsen, K.: Contracts for systems design, Research Report N.8147, Inria (2012)
Jones, M., Haraldsson, J.: D2.4 Dedicate Framework Description (2012)
Acknowledgements
The work is partially supported by Software Center (http://www.software-center.se).
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2017 Springer International Publishing AG
About this paper
Cite this paper
Zhou, Y., Pelliccione, P., Haraldsson, J., Islam, M. (2017). Improving Robustness of AUTOSAR Software Components with Design by Contract: A Study Within Volvo AB. In: Romanovsky, A., Troubitsyna, E. (eds) Software Engineering for Resilient Systems. SERENE 2017. Lecture Notes in Computer Science(), vol 10479. Springer, Cham. https://doi.org/10.1007/978-3-319-65948-0_10
Download citation
DOI: https://doi.org/10.1007/978-3-319-65948-0_10
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-319-65947-3
Online ISBN: 978-3-319-65948-0
eBook Packages: Computer ScienceComputer Science (R0)