{"title":"Viewpoint-Based Risk Assessment and Prioritization","authors":"H. Leung","doi":"10.1109/SEW.2012.27","DOIUrl":"https://doi.org/10.1109/SEW.2012.27","url":null,"abstract":"For software projects, different stakeholders may place different emphasis on the same risk. Risks that are important to one stakeholder may be less important or irrelevant to other stakeholders and vice versa. In the overall prioritization of risks for a software project, we need to consider this viewpoint-based difference. This paper first introduces the concept of viewpoint-based assessment of risks and then presents three methods for generating the overall risk prioritization based on the separated viewpoint-based prioritizations. We also present a case study of an outsourced project by applying the proposed methods and illustrate their relative strengths and weaknesses.","PeriodicalId":150723,"journal":{"name":"2012 35th Annual IEEE Software Engineering Workshop","volume":"6 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2012-10-12","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"115741745","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":"An Evaluation of Service Integration Approaches of Business Process Management Systems","authors":"Markus Doedt, B. Steffen","doi":"10.1109/SEW.2012.23","DOIUrl":"https://doi.org/10.1109/SEW.2012.23","url":null,"abstract":"In this paper, we evaluate and categorize how five representative, Java-based, state-of-the-art business process management systems, namely jBPM (4.x and 5.x), Activiti, AristaFlow and jABC, realize the integration of services. In particular, we show that the use of domain specific business activities is the currently most sophisticated technique for integrating services in business processes, and describe what they consist of, how they are created, how they can be organized and how they are used. This sheds light on the corresponding state-of-the-art, and shows that, in particular the supposedly big players, have quite some room for improvement.","PeriodicalId":150723,"journal":{"name":"2012 35th Annual IEEE Software Engineering Workshop","volume":"13 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2012-10-12","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"127047544","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":"Incremental Development of Multi-agent Systems in Object-Z","authors":"Graeme Smith, Kirsten Winter","doi":"10.1109/SEW.2012.19","DOIUrl":"https://doi.org/10.1109/SEW.2012.19","url":null,"abstract":"The complexity of multi-agent systems (MAS) demands a formal and incremental approach to their development. Such an approach needs to take into account issues specific to the development of MAS. In particular, methods are required for incrementally introducing agent decisionmaking procedures, and inter-agent negotiation mechanisms. This paper introduces an approach to modelling MAS and a definition of action refinement in Object-Z aimed at addressing these issues.","PeriodicalId":150723,"journal":{"name":"2012 35th Annual IEEE Software Engineering Workshop","volume":"115 6","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2012-10-12","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"132227950","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 Patterns Based Reverse Engineering Approach for Java Source Code","authors":"Rui Couto, A. Ribeiro, J. C. Campos","doi":"10.1109/SEW.2012.21","DOIUrl":"https://doi.org/10.1109/SEW.2012.21","url":null,"abstract":"The ever increasing number of platforms and languages available to software developers means that the software industry is reaching high levels of complexity. Model Driven Architecture (MDA) presents a solution to the problem of improving software development processes in this changing and complex environment. MDA driven development is based on models definition and transformation. Design patterns provide a means to reuse proven solutions during development. Identifying design patterns in the models of a MDA approach helps their understanding, but also the identification of good practices during analysis. However, when analyzing or maintaining code that has not been developed according to MDA principles, or that has been changed independently from the models, the need arises to reverse engineer the models from the code prior to patterns' identification. The approach presented herein consists in transforming source code into models, and infer design patterns from these models. Erich Gamma's cataloged patterns provide us a starting point for the pattern inference process. MapIt, the tool which implements these functionalities is described.","PeriodicalId":150723,"journal":{"name":"2012 35th Annual IEEE Software Engineering Workshop","volume":"1 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2012-10-12","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"125892597","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}
Sophia Voulgaropoulou, Georgios Spanos, L. Angelis
{"title":"Analyzing Measurements of the R Statistical Open Source Software","authors":"Sophia Voulgaropoulou, Georgios Spanos, L. Angelis","doi":"10.1109/SEW.2012.7","DOIUrl":"https://doi.org/10.1109/SEW.2012.7","url":null,"abstract":"Software quality is one of the main goals of effective programming. Although it has a quite ambiguous meaning, quality can be measured by several metrics, which have been appropriately formulated through the years. Software measurement is a particularly important procedure, as it provides meaningful information about the software artifact. This procedure is even more emerging when we refer to open source software, where the need for shared knowledge is crucial for the maintenance and evolution of the code. A paradigm of open source project where code quality is especially important is the scientific language R. This paper aims to perform measurements on the R statistical open source software, examine the relationships among the observed metrics and special attributes of the R software and search for certain characteristics that define its behavior and structure. For this purpose, a random sample of 508 R packages has been downloaded from the CRAN repository of R and has been measured, using the SourceMonitor metrics tool. The resulted measurements, along with a significant number of specific attributes of the R packages, were examined and analyzed, leading to interesting conclusions such as the validity of a power law distribution regarding the majority of the sample's metrics and the absence of specific patterns due to the interdependencies among packages. Finally, the effects of the number of developers and the number of dependencies are investigated, in order to understand their impact on the metrics of the sample packages.","PeriodicalId":150723,"journal":{"name":"2012 35th Annual IEEE Software Engineering Workshop","volume":"1 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2012-10-12","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"122401660","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":"Exploiting Ecore's Reflexivity for Bootstrapping Domain-Specific Code-Generators","authors":"Sven Jörges, B. Steffen","doi":"10.1109/SEW.2012.14","DOIUrl":"https://doi.org/10.1109/SEW.2012.14","url":null,"abstract":"This paper shows how the reflexivity of Ecore can be exploited for incrementally bootstrapping domain-specific code generators in the model-driven and service-oriented code generation framework Genesys. Key to this technology is the EMF SIB Generator, which, based on a very small set of manually written code generator services called SIBs, incrementally generates services in a bootstrapping fashion. To this end, it leverages Ecore's metamodel, which is specified in Ecore itself, to iteratively enlarge the set of SIBs until all concepts of Ecore are covered. On this basis, the EMF SIB Generator can then be used to generate all services required for constructing a corresponding code generator for any given metamodel specified in Ecore. This approach can be staightforwardly applied to arbitrary metalevels and elegantly enables the model-driven and service-oriented construction of code generators for Ecore-based domain-specific languages.","PeriodicalId":150723,"journal":{"name":"2012 35th Annual IEEE Software Engineering Workshop","volume":"446 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2012-10-12","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"129434297","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}
Arunesh Mathur, Harshal Choudhary, Priyank Vashist, W. Thies, P. S. Thilagam
{"title":"An Empirical Study of License Violations in Open Source Projects","authors":"Arunesh Mathur, Harshal Choudhary, Priyank Vashist, W. Thies, P. S. Thilagam","doi":"10.1109/SEW.2012.24","DOIUrl":"https://doi.org/10.1109/SEW.2012.24","url":null,"abstract":"The use of Open Source Software (OSS) components in building applications has presented the challenge of integrating them in a way such that the licenses of the individual components do not conflict with each other and if applicable, the overall license of the application. These conflicts lead to violations, with many having far reaching legal consequences. While proprietary software firms are often plagued with the risks of not satisfying the clauses of OSS licenses, we hypothesize that a large degree of code reuse within the OSS community poses similar threats too. Through an analysis of 1423 projects, consisting of approximately 69 million non-blank lines of code from Google Code project hosting, we validate instances of code reuse between projects by comparing their licenses. Our results discover four violations, evaluated by searching for files that share similar content. Additionally, we present statistics on code reuse within the set of projects.","PeriodicalId":150723,"journal":{"name":"2012 35th Annual IEEE Software Engineering Workshop","volume":"1 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2012-10-12","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"130856200","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 Comparative Analysis of Software Reliability Growth Models using Defects Data of Closed and Open Source Software","authors":"Najeeb Ullah, M. Morisio, A. Vetrò","doi":"10.1109/SEW.2012.26","DOIUrl":"https://doi.org/10.1109/SEW.2012.26","url":null,"abstract":"The purpose of this study is to compare the fitting (goodness of fit) and prediction capability of eight Software Reliability Growth Models (SRGM) using fifty different failure Data sets. These data sets contain defect data collected from system test phase, operational phase (field defects) and Open Source Software (OSS) projects. The failure data are modelled by eight SRGM (Musa Okumoto, Inflection S-Shaped, Goel Okumoto, Delayed S-Shaped, Logistic, Gompertz, Yamada Exponential, and Generalized Goel Model). These models are chosen due to their prevalence among many software reliability models. The results can be summarized as follows: Fitting capability: Musa Okumoto fits all data sets, but all models fit all the OSS datasets. : Prediction capability: Musa Okumoto, Inflection S-Shaped and Goel Okumoto are the best predictors for industrial data sets, Gompertz and Yamada are the best predictors for OSS data sets. : Fitting and prediction capability: Musa Okumoto and Inflection are the best performers on industrial datasets. However this happens only on slightly more than 50% of the datasets. Gompertz and Inflection are the best performers for all OSS datasets.","PeriodicalId":150723,"journal":{"name":"2012 35th Annual IEEE Software Engineering Workshop","volume":"336 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2012-10-12","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"116653574","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}
Jose Luis Freitas, Daniela Carneiro da Cruz, P. Henriques
{"title":"A Comment Analysis Approach for Program Comprehension","authors":"Jose Luis Freitas, Daniela Carneiro da Cruz, P. Henriques","doi":"10.1109/SEW.2012.8","DOIUrl":"https://doi.org/10.1109/SEW.2012.8","url":null,"abstract":"Comments are interspersed by the Programmer among code lines, at software development phase, with two main purposes: to help himself during the development phase; to help other programmers later on, during the maintenance phase. The former are memos to help him remembering to do something; they are not useful for those willing to understand code. The latter are explanations about the ideas he has in mind when he wrote the code; they can be a relevant aid for others and should be taken into consideration as a first step in program comprehension. Comments are scattered all over the source code, sometimes wrapping a block of code (placed at the beginning or at its end), other times complementing a single statement. If comments are inserted to help in understanding the programmer ideas, they will contain for sure concepts associated with problem domain In this paper we discuss an approach to locate a relevant code chunk (one where the programmer should focus the attention for software maintenance), using information retrieval techniques to locate problem domain concepts within comments. In our approach, comments are isolated marking their type (inline, block or javadoc comment) and keeping their context (code lines to which they are associated). Picking up concepts from the ontology that describes the problem, it is possible to find all the comments that contain that concept (similar words) and rate them. Reading comments from the retrieved list, the programmer can select those that seem to him meaningful and dive directly into the associated chunk. In the paper, we also survey Comment Analysis techniques and describe an environment, Darius, that aims at automatizing the approach proposed. Moreover, Darius provides functionality to study comments frequency in the source files of a given project, to support the discussion weather it is worthwhile or not to apply this program comprehension step.","PeriodicalId":150723,"journal":{"name":"2012 35th Annual IEEE Software Engineering Workshop","volume":"270 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2012-10-12","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"133956943","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":"Automotive System Development Using Reference Architectures","authors":"Kenneth Lind, Rogardt Heldal","doi":"10.1109/SEW.2012.11","DOIUrl":"https://doi.org/10.1109/SEW.2012.11","url":null,"abstract":"The E/E (Electrical/Electronic) Architecture is the key enabler for new innovative user functions in the automotive domain. The E/E Architecture needs to manage the complexity of the E/E System in a cost-efficient manner. This is a fact for all domains developing mass-produced distributed systems containing embedded software. However, many companies in these domains are missing a clear description of the development process for E/E Architectures. In addition, the relation between development of E/E Architectures and the development of E/E Systems is not clear. This paper proposes a development process for E/E Architectures in the automotive domain. Furthermore, it shows the relation between development of E/E Architectures and development of E/E Systems. The development process is based on post mortem analysis of E/E System development projects conducted at an automotive company during the period 1998-2009, and it was validated in an E/E Architecture development project conducted during the period 2010-2011. The contribution of this paper is a detailed E/E System development process describing how to create and maintain an E/E Architecture and how to refine this into a Product-specific Architecture in Product development projects. Furthermore, the paper reports on experiences from working with RA development both as a small stand-alone company with few different products, and as part of a large global company with several different products.","PeriodicalId":150723,"journal":{"name":"2012 35th Annual IEEE Software Engineering Workshop","volume":"53 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2012-10-12","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"131362429","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}