{"title":"Towards Translational Execution of Action Language for Foundational UML","authors":"Federico Ciccozzi, A. Cicchetti, Mikael Sjödin","doi":"10.1109/SEAA.2013.31","DOIUrl":"https://doi.org/10.1109/SEAA.2013.31","url":null,"abstract":"Model-driven engineering has prominently gained consideration as effective substitute of error-prone code-centric development approaches especially for its capability of abstracting the problem through models and then manipulating them to automatically generate target code. Nowadays, thanks to powerful modelling languages, a system can be designed by means of well-specified models that capture both structural as well as behavioural aspects. From them, target implementation is meant to be automatically generated. An example of well-established general purpose modelling language is the UML, recently enhanced with the introduction of an action language denominated ALF, both proposed by the OMG. In this work we focus on enabling the execution of models defined in UML-ALF and more specifically on the translational execution of ALF towards non-UML target platforms.","PeriodicalId":243149,"journal":{"name":"2013 39th Euromicro Conference on Software Engineering and Advanced Applications","volume":"1 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2013-10-10","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"122210452","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":"Static Prediction of Loop Iteration Counts Using Machine Learning to Enable Hot Spot Optimizations","authors":"D. Tetzlaff, S. Glesner","doi":"10.1109/SEAA.2013.12","DOIUrl":"https://doi.org/10.1109/SEAA.2013.12","url":null,"abstract":"In general, program execution spends most of the time in a small fraction of code called hot spots of the program. These regions where optimization would be most beneficial are mainly composed of loops and must be identified to enable hot spot optimizations. Consequently, identifying hot spots involves determining loop iteration counts arising at run-time of the program, which is often not knowable in advance at run-time and even less statically knowable at compile time of the application by using only static analyses. In this paper we present a sophisticated approach using machine learning techniques to automatically generate heuristics that provide the compiler with knowledge of this run-time behavior, hence yielding more precise heuristics than those generated by pure static analyses. Our experimental results demonstrate the accuracy of our approach and show the general applicability to a wide range of programs with different behavior as we have used 175 programs of 12 benchmark suites in total from different real-world application domains for our experiments. Among others, our approach eliminates the need for manual annotations of run-time information, which automates and facilitates the development of complex software, thus improving the software engineering process.","PeriodicalId":243149,"journal":{"name":"2013 39th Euromicro Conference on Software Engineering and Advanced Applications","volume":"297 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2013-09-04","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"123118135","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":"Microevolution of Pervasive Services","authors":"M. Caporuscio","doi":"10.1109/SEAA.2013.15","DOIUrl":"https://doi.org/10.1109/SEAA.2013.15","url":null,"abstract":"The pervasive computing vision of the future communication infrastructure is that we will be everywhere connected with invisible devices, which may consume and provide computational resources over the network. Resources are often abstracted as autonomous services, which must be \"continually\" evolved at run time to satisfy changing requirements. This paper discusses the design, development and evaluation of the Microevolution of Pervasive Services framework, which aims at supporting the run-time small-scale evolution of services through code mobility. Indeed, the framework provides (i) a dispatching mechanism to migrate Java code throughout the pervasive networking environment, and (ii) a microevolution manager that exploits Java reflection mechanisms to optimize code transmission.","PeriodicalId":243149,"journal":{"name":"2013 39th Euromicro Conference on Software Engineering and Advanced Applications","volume":"15 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2013-09-04","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"125374595","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}
M. Staron, Wilhelm Meding, Christoffer Höglund, Peter S. Eriksson, Jimmy Nilsson, J. Hansson
{"title":"Identifying Implicit Architectural Dependencies Using Measures of Source Code Change Waves","authors":"M. Staron, Wilhelm Meding, Christoffer Höglund, Peter S. Eriksson, Jimmy Nilsson, J. Hansson","doi":"10.1109/SEAA.2013.9","DOIUrl":"https://doi.org/10.1109/SEAA.2013.9","url":null,"abstract":"The principles of Agile software development are increasingly used in large software development projects, e.g. using Scrum of Scrums or combining Agile and Lean development methods. When large software products are developed by self-organized, usually feature-oriented teams, there is a risk that architectural dependencies between software components become uncontrolled. In particular there is a risk that the prescriptive architecture models in form of diagrams are outdated and implicit architectural dependencies may become more frequent than the explicit ones. In this paper we present a method for automated discovery of potential dependencies between software components based on analyzing revision history of software repositories. The result of this method is a map of implicit dependencies which is used by architects in decisions on the evolution of the architecture. The software architects can assess the validity of the dependencies and can prevent unwanted component couplings and design erosion hence minimizing the risk of post-release quality problems. Our method was evaluated in a case study at one large product at Saab Electronic Defense Systems (Saab EDS) and one large software product at Ericsson AB.","PeriodicalId":243149,"journal":{"name":"2013 39th Euromicro Conference on Software Engineering and Advanced Applications","volume":"15 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2013-09-04","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"114580661","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":"Verifying Runtime Architectural Reconfiguration of Dynamically Adaptive Systems","authors":"Sihem Loukil, Slim Kallel, M. Jmaiel","doi":"10.1109/SEAA.2013.59","DOIUrl":"https://doi.org/10.1109/SEAA.2013.59","url":null,"abstract":"Nowadays, dynamically adaptive systems are gaining more widespread use in several domains (mobile application, airports, banks, etc). These systems are often subject to evolution due to varying environmental conditions and the apparition of new user requirements. To maintain their usefulness, such systems must be always available and reliable. In this paper, we are particularly interested in the problem of managing and verifying runtime reconfigurations of dynamically adaptive systems. While managing runtime reconfigurations is achieved through the combination of the Aspect-Oriented Software Development (AOSD) and the Architecture Description Language (ADL), their verification is performed through checking the imposed architectural invariants on the whole application. For this purpose, we present how our approach supports runtime reconfigurations and how architectural invariants written in OCL language can be automatically translated into Schema Ron schemas and then how their preservation is verified to evaluate the runtime reconfigurations.","PeriodicalId":243149,"journal":{"name":"2013 39th Euromicro Conference on Software Engineering and Advanced Applications","volume":"138 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2013-09-04","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"131702397","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. Martin, B. Winkler, A. Leitner, Alexander Thaler, M. Cifrain, D. Watzenig
{"title":"Investigation of the Influence of Non-E/E Safety Measures for the ASIL Determination","authors":"H. Martin, B. Winkler, A. Leitner, Alexander Thaler, M. Cifrain, D. Watzenig","doi":"10.1109/SEAA.2013.35","DOIUrl":"https://doi.org/10.1109/SEAA.2013.35","url":null,"abstract":"The objective of functional safety is the development of a system with insignificant risk potential. For that purpose, all risk reduction measures have to be considered early in development. This requires a close collaboration of different engineering disciplines in order to specify a comprehensive safety concept. The international functional safety standard ISO 26262 has to be considered for the development of electrical and/or electronic (E/E) systems within road vehicles, which additionally provides a basic framework to consider also non-E/E measures. This paper proposes (1) a methodology for examining the Hazard Analysis and Risk Assessment and (2) a workflow for the elaboration of an integrated safety concept with respect to different kinds of safety measures. One main lesson learned was that the consideration of all kinds of risk reduction measures in the concept phase improves the understanding of the overall safety of a system and that involving various fields of expertise enables the development of a clear safety concept.","PeriodicalId":243149,"journal":{"name":"2013 39th Euromicro Conference on Software Engineering and Advanced Applications","volume":"9 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2013-09-04","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"133747707","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":"Variability and Dependency Modeling of Quality Attributes","authors":"J. Horcas, M. Pinto, L. Fuentes","doi":"10.1109/SEAA.2013.20","DOIUrl":"https://doi.org/10.1109/SEAA.2013.20","url":null,"abstract":"Functional Quality Attributes (FQAs) are quality attributes that have strong functional implications and so can be easily modeled by software components. Thus, we use an aspect-oriented software product line approach, to model the commonalities and variabilities of FQAs from the early stages of the software development. However, FQAs cannot be modeled in isolation since they usually have dependencies and interactions between them. In this paper we focus on identifying and modeling the dependencies among different FQAs. These dependencies are automatically incorporated into the final software architecture of the system under development, even when the software architect may be unaware of them.","PeriodicalId":243149,"journal":{"name":"2013 39th Euromicro Conference on Software Engineering and Advanced Applications","volume":"13 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2013-09-04","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"115382979","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":"Modelling for Hardware and Software Partitioning Based on Multiple Properties","authors":"Gaetana Sapienza, T. Seceleanu, I. Crnkovic","doi":"10.1109/SEAA.2013.56","DOIUrl":"https://doi.org/10.1109/SEAA.2013.56","url":null,"abstract":"In many embedded systems types the separation process for deploying the applications as software and hardware executable units, called partitioning is crucial. This is due to the fact that partitioning decisions impact the overall life cycle of the systems. In industry it is common practice to take partitioning decisions in an early stage of the design, based on hardware and software designers expertise. We propose a new methodology as a combination of model based and component-based approaches which enables a late partitioning decisions based on high level system requirements and project constrains. The final partitioning is decided based on a multi-property analysis approach. Here, we focus on the formalization of the overall process and in particular on the definition of a comprehensive system metamodel. This is meant to support modelling approaches suitable for enabling both the partitioning and reuse. An industrial case study is used to illustrate the approach.","PeriodicalId":243149,"journal":{"name":"2013 39th Euromicro Conference on Software Engineering and Advanced Applications","volume":"15 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2013-09-04","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"115497370","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":"Industrial Challenges with Quality Requirements in Safety Critical Software Systems","authors":"Ali Shahrokni, R. Feldt","doi":"10.1109/SEAA.2013.57","DOIUrl":"https://doi.org/10.1109/SEAA.2013.57","url":null,"abstract":"Budget constraints and the difficulty to specify quality requirements, such as reliability, robustness, and safety present challenges to many software companies in particular if they develop safety-critical systems. Failing to specify this type of requirements properly can lead to misunderstandings between the developers and the customers, which can threaten the quality of the system. However, little information is available on how companies currently work with these requirements. This paper describes the state of requirements engineering practice and identifies challenges with quality requirements by conducting a requirements analysis on two projects, including 980 requirements, at a company developing safety-critical systems. We also compare to similar results for a company developing end user software. Problematic and ambiguous requirements have caused misunderstandings with the customers and introduced late and project-critical costs to the projects. The results show that despite a high percentage of quality requirements at the company, the majority of these requirements are non-quantified, which potentially leads to lower verifiability, high ambiguity and can create late-project delays in verification and validation. Our study adds empirical evidence on the characteristics and challenges of real-world requirements engineering for safety-critical systems.","PeriodicalId":243149,"journal":{"name":"2013 39th Euromicro Conference on Software Engineering and Advanced Applications","volume":"15 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2013-09-04","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"124285460","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":"Software Product Complexity Estimation Using Grey Measurement","authors":"Semra Yilmaz Tastekin, Y. M. Erten, S. Bilgen","doi":"10.1109/SEAA.2013.42","DOIUrl":"https://doi.org/10.1109/SEAA.2013.42","url":null,"abstract":"A new understanding of product complexity is described as a determinant of software development time. A complexity estimation method for software is proposed taking different factors into consideration. Grey measurement technique is used for complexity estimation and complexity measurements of five software products are presented. The results of these measurement show that grey complexity measurement results are linearly related to the number of main functions of software products.","PeriodicalId":243149,"journal":{"name":"2013 39th Euromicro Conference on Software Engineering and Advanced Applications","volume":"99 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2013-09-04","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"124698645","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}