{"title":"Maintenance of embedded systems: Supporting program comprehension using dynamic analysis","authors":"Jonas Trümper, Stefan Voigt, J. Döllner","doi":"10.1109/SEES.2012.6225492","DOIUrl":"https://doi.org/10.1109/SEES.2012.6225492","url":null,"abstract":"Maintenance of embedded software systems is faced with multiple challenges, including the exploration and analysis of the actual system's runtime behavior. As a fundamental technique, tracing can be used to capture data about runtime behavior as a whole, and represents one of the few methods to observe and record data about embedded systems within their production environments. In this paper we present a software-based, function-boundary tracing approach for embedded software systems. It uses static binary instrumentation, which implies only lightweight memory and performance overheads. To further reduce these overheads, instrumentation can be configured per trace, i.e., activated only for a specified group of functions without having to recompile the system. The technique can be characterized by its robust implementation and its versatile usage. It is complemented by a visualization framework that allows for analysis and exploration of a system's runtime behavior, e.g., to examine thread interaction. To show the technique's applicability, we conclude with a case study that has been applied to an industrial embedded software system.","PeriodicalId":337664,"journal":{"name":"2012 Second International Workshop on Software Engineering for Embedded Systems (SEES)","volume":"81 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2012-06-09","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"116333689","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
{"title":"Applying agile methods to embedded software development: A systematic review","authors":"Mengjiao Shen, Wenrong Yang, Guoping Rong, Dong Shao","doi":"10.1109/SEES.2012.6225488","DOIUrl":"https://doi.org/10.1109/SEES.2012.6225488","url":null,"abstract":"Since the 21st century, embedded software products have been pervasive in the world we live in, however, this emerging industry is facing many challenges due to its own unique characteristics which distinguish it from non-embedded software development. The other hand, agile software development methods are adopted by organizations worldwide at an increasing speed. It seems meaningful to explore to apply agile methods to embedded software development and in this paper a systematic review was conducted to supply an initial guide to the researchers and industrial readership.","PeriodicalId":337664,"journal":{"name":"2012 Second International Workshop on Software Engineering for Embedded Systems (SEES)","volume":"13 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2012-06-09","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"123369862","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
{"title":"Architectural aspects of software sharing and standardization: AUTOSAR for automotive domain","authors":"B. Boss","doi":"10.1109/SEES.2012.6225493","DOIUrl":"https://doi.org/10.1109/SEES.2012.6225493","url":null,"abstract":"Business and cooperation models in the automotive domain are becoming more and more complex and flexible. The following two models and their impact on software architecture will be discussed in more detail: 1) delivery of code relevant artifacts from the OEM (original automobile equipment manufacturer) to the Tier1 (supplier of OEM) and the other way around: 2) delivery of Tier1 software to the OEM. Both use cases and all its derivations are subsumed under the term “Software Sharing”. The discussion is based on the concrete experiences of BOSCH Powertrain (Diesel Gasoline Systems, DGS) in the area of software sharing. Improvements are seen in the strengthened use of standardized architecture and application interfaces. The most important software standard in the automotive domain is AUTOSAR (AUTomotive Open System ARchitecture).","PeriodicalId":337664,"journal":{"name":"2012 Second International Workshop on Software Engineering for Embedded Systems (SEES)","volume":"1 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2012-06-09","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"128854257","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
Indika Meedeniya, A. Aleti, Iman Avazpour, Ayman A. Amin
{"title":"Robust ArcheOpterix: Architecture optimization of embedded systems under uncertainty","authors":"Indika Meedeniya, A. Aleti, Iman Avazpour, Ayman A. Amin","doi":"10.1109/SEES.2012.6225486","DOIUrl":"https://doi.org/10.1109/SEES.2012.6225486","url":null,"abstract":"Design of embedded systems involves a number of architecture decisions which have a significant impact on its quality. Due to the complexity of today's systems and the large design options that need to be considered, making these decisions is beyond the capabilities of human comprehension and makes the architectural design a challenging task. Several tools and frameworks have been developed, which automate the search for optimal or near-optimal design decisions based on quantitative architecture evaluations for different quality attributes. However, current approaches use approximations for a series of model parameters which may not be accurate and have to be estimated subject to heterogeneous uncertain factors. We have developed a framework which considers the uncertainty of design-time parameter estimates, and optimizes embedded system architectures for robust quality goals. The framework empowers conventional architecture optimization approaches with modeling and tool support for architecture description, model evaluation and architecture optimization on the face of uncertainty.","PeriodicalId":337664,"journal":{"name":"2012 Second International Workshop on Software Engineering for Embedded Systems (SEES)","volume":"19 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2012-06-09","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"129181868","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
{"title":"Semi-automatic establishment and maintenance of valid traceability in automotive development processes","authors":"Markus Fockel, Jörg Holtmann, Jan Meyer","doi":"10.1109/SEES.2012.6225489","DOIUrl":"https://doi.org/10.1109/SEES.2012.6225489","url":null,"abstract":"The functionality realized by software in modern cars is increasing and as a result the development artifacts of automotive systems are getting more complex. The existence of traceability along these artifacts is essential, since it allows to monitor the product development from the initial requirements to the final code. However, traceability is established and maintained mostly manually, which is time-consuming and error-prone. A further crucial problem is the assurance of the validity of the trace links, that is, the linked elements are indeed related to each other. In this paper we present a semiautomatic approach to create, check, and update trace links between artifacts along an automotive development process.","PeriodicalId":337664,"journal":{"name":"2012 Second International Workshop on Software Engineering for Embedded Systems (SEES)","volume":"43 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2012-06-09","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"127944206","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
{"title":"A comparison of executable model based approaches for embedded systems","authors":"Julie S. Fant, H. Gomaa, IV RobertG.Pettit","doi":"10.1109/SEES.2012.6225484","DOIUrl":"https://doi.org/10.1109/SEES.2012.6225484","url":null,"abstract":"Designing and building embedded systems is a challenging problem. Designers must ensure that the software architecture meets its functional requirements and also, since embedded systems often have real-time constraints, meets its performance requirements. It is usually difficult to determine whether or not the embedded system designs will meet functional and performance requirements. To help increase confidence in embedded software architectures, designers often turn to executable model based approaches to assess their systems. There are many different approaches for designing and analyzing real-time embedded systems. This paper is intended to help designers in their choice by comparing two different executable model based approaches for designing and validating real-time embedded systems, namely state machines and colored Petri nets. Both approaches are compared using seven different comparison criteria and examples are given from a cruise control system case study.","PeriodicalId":337664,"journal":{"name":"2012 Second International Workshop on Software Engineering for Embedded Systems (SEES)","volume":"103 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2012-06-09","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"115833391","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
{"title":"A dynamic detective method against ROP attack on ARM platform","authors":"Z. Huang, Tao Zheng, Jia Liu","doi":"10.1109/SEES.2012.6225491","DOIUrl":"https://doi.org/10.1109/SEES.2012.6225491","url":null,"abstract":"With the popularity of embedded devices, especially smart phones, a growing attention has been paid to their programs' security. Many viruses on PC platforms migrated to embedded device have brought new threats to the security of the embedded platform. ROP (Return-Oriented Programming) attack is one of them. At the same time, traditional protective measures on PC platform tend to lose effect in embedded devices due to differences among platforms and architectures which bring significant challenges to virus protection on embedded devices. Defending ROP attack confronts the same problem. Existing protective methods against ROP attack on PC rarely work well on an embedded platform. This paper presents a protective algorithm against ROP virus on the embedded ARM platform. Furthermore, we develop a Valgrind tool to implement this algorithm with dynamic binary instrumentation technology which can effectively prevent the ROP attack and its variants on the ARM platform.","PeriodicalId":337664,"journal":{"name":"2012 Second International Workshop on Software Engineering for Embedded Systems (SEES)","volume":"20 3","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2012-06-09","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"113961914","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
H. Kienle, Daniel Sundmark, K. Lundqvist, Andreas Johnsen
{"title":"Liability for software in safety-critical mechatronic systems: An industrial questionnaire","authors":"H. Kienle, Daniel Sundmark, K. Lundqvist, Andreas Johnsen","doi":"10.5555/2667025.2667033","DOIUrl":"https://doi.org/10.5555/2667025.2667033","url":null,"abstract":"There is very little research on how industry is dealing with the risk of legal liability when constructing safety-critical mechatronic systems that are also software intensive. In this paper we propose a case study approach with the goal to understand how liability concerns in this setting impact software development in industry. The approach takes into account that software development is embedded into a complex socio-technical context involving stakeholders from technical, managerial and legal backgrounds. We present first results of our case study from a questionnaire involving six companies that develop software-intensive, safety-critical systems in the vehicular and avionics domains. The results of the questionnaire shed light on current industrial practices and concerns. The results indicate that liability seems indeed a concern and that a more in-depth analysis of this topic would be desirable to better understand the strategies that are used by industry to address liability risks.","PeriodicalId":337664,"journal":{"name":"2012 Second International Workshop on Software Engineering for Embedded Systems (SEES)","volume":"57 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2012-06-09","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"133207621","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
Norbert Siegmund, Maik Mory, J. Siegmund, G. Saake, Mykhaylo Nykolaychuk, Marco Schumann
{"title":"Interoperability of non-functional requirements in complex systems","authors":"Norbert Siegmund, Maik Mory, J. Siegmund, G. Saake, Mykhaylo Nykolaychuk, Marco Schumann","doi":"10.1109/SEES.2012.6225487","DOIUrl":"https://doi.org/10.1109/SEES.2012.6225487","url":null,"abstract":"Heterogeneity of embedded systems leads to the development of variable software, such as software product lines. From such a family of programs, stakeholders select the specific variant that satisfies their functional requirements. However, different functionality exposes different non-functional properties of these variants. Especially in the embedded-system domain, non-functional requirements are vital, because resources are scarce. Hence, when selecting an appropriate variant, we have to fulfill also non-functional requirements. Since more systems are interconnected, the challenge is to find a variant that additionally satisfies global nonfunctional (or quality) requirements. In this paper, we advert the problem of achieving interoperability of non-functional requirements among multiple interacting systems using a real-world scenario. Furthermore, we show an approach to find optimal variants for multiple systems that reduces computation effort by means of a stepwise configuration process.","PeriodicalId":337664,"journal":{"name":"2012 Second International Workshop on Software Engineering for Embedded Systems (SEES)","volume":"4 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2012-06-09","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"134053489","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}