{"title":"Safe Substitution of Components in Self-Adaptive Web Applications","authors":"S. Nakajima","doi":"10.1109/APSEC.2013.59","DOIUrl":"https://doi.org/10.1109/APSEC.2013.59","url":null,"abstract":"Open systems such as Web applications are dynamically adaptive to allow desired levels of flexibility. The adaptibity may be achieved by replacing constituent software components at runtime, and a new method is required to ensure that the replacement or substitution is safe. This paper proposes a formal framework of safe substitution for self-adaptive systems and presents a policy-based, system integrity verification method. In an example case, an adaptive Web application demonstrates the effectiveness of the proposed approach.","PeriodicalId":187451,"journal":{"name":"2013 20th Asia-Pacific Software Engineering Conference (APSEC)","volume":"83 2 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2013-12-02","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"126597737","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}
Hiroaki Shimba, Kentaro Hanada, Kozo Okano, S. Kusumoto
{"title":"Bidirectional Translation between OCL and JML for Round-Trip Engineering","authors":"Hiroaki Shimba, Kentaro Hanada, Kozo Okano, S. Kusumoto","doi":"10.1109/APSEC.2013.111","DOIUrl":"https://doi.org/10.1109/APSEC.2013.111","url":null,"abstract":"In recent years, Model-driven development (MDD) based techniques have emerged, and thus translation techniques such as translation from Object Constraint Language (OCL) to Java Modeling Language (JML) have gained much attention. We have been studying not only translation techniques from OCL to JML but also from JML to OCL in order to support Round-trip Engineering (RTE). Two directions of translation among OCL and JML are performed independently without considering unified and iterative translations in our previous work. For an OCL statement and another OCL statement which is obtained from a JML statement which was translated from the original OCL, our previous framework preserves only the meaning of the two statements, however, the forms of the OCL statements may change. It prevents us from RTE-based development. This paper proposes a translation technique between OCL and JML maintaining OCL code by describing their original forms in the comment area of the target languages. Our implementation has been evaluated on two projects used in our previous work and also seven additional open source projects.","PeriodicalId":187451,"journal":{"name":"2013 20th Asia-Pacific Software Engineering Conference (APSEC)","volume":"41 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2013-12-02","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"133198940","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":"Towards Requirements Change Decision Support","authors":"Sanjay Ghosh, S. Ramaswamy, R. Jetley","doi":"10.1109/APSEC.2013.30","DOIUrl":"https://doi.org/10.1109/APSEC.2013.30","url":null,"abstract":"Our experiences with industrial software development projects have often revealed that requirements change even after their formal approvals. Although the requirements are never stable, proactive identification of potentially changeable or deferrable requirements, and estimation of their impacts early in a project can be useful in minimizing the risks and cost overruns. In practice, the decisions to change or defer certain requirements are based on experience, and are mostly driven by business needs and product release timelines. There are no techniques available which could foresee such changes early in the project. In this work, we perform exploratory analysis of the requirement artifacts from thirty three industrial software development projects and shared our observations on different requirement change attributes. Through empirical analysis, we evolve the relative weights of each of these attributes in terms of their impacts on the project schedule and effort. Based on the analysis, a model is developed to predict the impact due to requirement changes and it is validated. This model can be used to develop a requirement change decision support tool to assist decision makers.","PeriodicalId":187451,"journal":{"name":"2013 20th Asia-Pacific Software Engineering Conference (APSEC)","volume":"358 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2013-12-02","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"131879635","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}
Issam Jebreen, Robert Wellington, Stephen G. MacDonell
{"title":"Packaged Software Implementation Requirements Engineering by Small Software Enterprises","authors":"Issam Jebreen, Robert Wellington, Stephen G. MacDonell","doi":"10.1109/APSEC.2013.18","DOIUrl":"https://doi.org/10.1109/APSEC.2013.18","url":null,"abstract":"Small to medium sized business enterprises (SMEs) generally thrive because they have successfully done something unique within a niche market. For this reason, SMEs may seek to protect their competitive advantage by avoiding any standardization encouraged by the use of packaged software (PS). Packaged software implementation at SMEs therefore presents challenges relating to how best to respond to mismatches between the functionality offered by the packaged software and each SME's business needs. An important question relates to which processes small software enterprises - or Small to Medium-Sized Software Development Companies (SMSSDCs) - apply in order to identify and then deal with these mismatches. To explore the processes of packaged software (PS) implementation, an ethnographic study was conducted to gain in-depth insights into the roles played by analysts in two SMSSDCs. The purpose of the study was to understand PS implementation in terms of requirements engineering (or 'PSIRE'). Data collected during the ethnographic study were analyzed using an inductive approach. Based on our analysis of the cases we constructed a theoretical model explaining the requirements engineering process for PS implementation, and named it the PSIRE Parallel Star Model. The Parallel Star Model shows that during PSIRE, more than one RE process can be carried out at the same time. The Parallel Star Model has few constraints, because not only can processes be carried out in parallel, but they do not always have to be followed in a particular order. This paper therefore offers a novel investigation and explanation of RE practices for packaged software implementation, approaching the phenomenon from the viewpoint of the analysts, and offers the first extensive study of packaged software implementation RE (PSIRE) in SMSSDCs.","PeriodicalId":187451,"journal":{"name":"2013 20th Asia-Pacific Software Engineering Conference (APSEC)","volume":"1 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2013-12-02","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"117269922","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":"Strategies for Aligning Variability Model and Architecture","authors":"Iris Groher, R. Weinreich","doi":"10.1109/APSEC.2013.73","DOIUrl":"https://doi.org/10.1109/APSEC.2013.73","url":null,"abstract":"We have recently developed a tool-supported approach for the transitioning from implicit to explicit variability management of existing software products. Such an approach requires the definition of a variability model that is then linked to the existing product architecture to document how the variability is realized in the architecture. As the existing architecture has typically not been developed with variability in mind, different inconsistencies can occur when linking the variability model to the architecture. In this paper we classify the different inconsistencies, show how they can be detected, and propose different refactoring strategies to support the systematic alignment of variability model and architecture. As a proof-of-concept, the identified strategies have been applied in a first case study of introducing explicit variability management in our own architecture toolkit.","PeriodicalId":187451,"journal":{"name":"2013 20th Asia-Pacific Software Engineering Conference (APSEC)","volume":"41 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2013-12-02","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"116401569","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":"Lehman's Laws and the Productivity of Increments: Implications for Productivity","authors":"Ramin Moazeni, Daniel Link, B. Boehm","doi":"10.1109/APSEC.2013.84","DOIUrl":"https://doi.org/10.1109/APSEC.2013.84","url":null,"abstract":"Which are the consequences of Lehman's Laws of Software Evolution for the productivity of incrementally developed projects? The concept of Incremental Development Productivity Decline (IDPD), which deals with how the productivity of incrementally developed software develops over its increments, is introduced. It is explained how Lehman's Laws of Software Evolution apply to it and how maintenance and reuse are relevant to both. Every Law of Software Evolution is discussed individually from a qualitative standpoint with regard to whether it could be a cause of IDPD. After that discussion, the overall situation is examined in light of how different courses of action cause which laws to apply different degrees of effects.","PeriodicalId":187451,"journal":{"name":"2013 20th Asia-Pacific Software Engineering Conference (APSEC)","volume":"43 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2013-12-02","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"123463080","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":"Mining Attribute Lifecycle to Predict Faults and Incompleteness in Database Applications","authors":"K. Liu, Hee Beng Kuan Tan","doi":"10.1109/APSEC.2013.39","DOIUrl":"https://doi.org/10.1109/APSEC.2013.39","url":null,"abstract":"In a database application, for each attribute, a value is created initially via insertion. Then, the value can be referenced or updated via selection and updating respectively. Eventually, when the record is deleted, the values of the attributes are also deleted. These occurrences of events are associated with the states to constitute the attribute lifecycle. Our empirical studies discover that faults and incompleteness in database applications are highly associated with the attribute lifecycle. Consequently, we propose a novel approach to automatically extract the attribute lifecycle out of a database application from its source code through inter-procedural static program analysis. Data mining methods are applied to predict faults and incompleteness in database applications. Experiments on PHP systems give evidence to support applicability and accuracy of the proposed method.","PeriodicalId":187451,"journal":{"name":"2013 20th Asia-Pacific Software Engineering Conference (APSEC)","volume":"42 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2013-12-02","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"117130521","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}
Changxiao Du, Xiaohong Li, H. Shi, Jing Hu, Ruitao Feng, Zhiyong Feng
{"title":"Architecture Security Evaluation Method Based on Security of the Components","authors":"Changxiao Du, Xiaohong Li, H. Shi, Jing Hu, Ruitao Feng, Zhiyong Feng","doi":"10.1109/APSEC.2013.75","DOIUrl":"https://doi.org/10.1109/APSEC.2013.75","url":null,"abstract":"This paper presents a quantitative architecture security evaluation method to identify potential risks of an architecture. The method is based on security of the architecture components. In this method, components of the architecture are classified and their security measures are identified according to component function and architecture level. Then, an integration process applies analytic hierarchy process (AHP) and fuzzy evaluation analysis to determine quantitative and qualitative factors in evaluating the security of components. These factors are used to obtain security conclusions of the architecture. The experiment shows that the method not only improves efficiency of the evaluation, but also makes security evaluation process more objective and accurate.","PeriodicalId":187451,"journal":{"name":"2013 20th Asia-Pacific Software Engineering Conference (APSEC)","volume":"1 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2013-12-02","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"124120426","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":"On the Use of Software Quality Standard ISO/IEC9126 in Mobile Environments","authors":"A. Idri, Karima Moumane, A. Abran","doi":"10.1109/APSEC.2013.12","DOIUrl":"https://doi.org/10.1109/APSEC.2013.12","url":null,"abstract":"The capabilities and resources offered by mobile technologies are still far from those provided by fixed environments, and this poses serious challenges, in terms of evaluating the quality of applications operating in mobile environments. This article presents a study to help quality managers apply the ISO 9126 standard on software quality, particularly the External Quality model, to mobile environments. The influence of the limitations of mobile technologies are evaluated for each software quality characteristic, based on the coverage rates of its external metrics, which are themselves influenced by these limitations. The degrees of this influence are discussed and aggregated to provide useful recommendations to quality managers for their evaluation of quality characteristics in mobile environments. These recommendations are intended for mobile software in general and aren't targeted a specific ones. The External Quality model is especially valuable for assessing the Reliability, Usability, and Efficiency characteristics, and illustrates very well the conclusive nature of the recommendations of this study. However, more study is needed on the other quality characteristics, in order to determine the relevance of evaluating them in mobile environments.","PeriodicalId":187451,"journal":{"name":"2013 20th Asia-Pacific Software Engineering Conference (APSEC)","volume":"46 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2013-12-02","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"124888910","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}
W. Kong, Leyuan Liu, Takahiro Ando, Hirokazu Yatsu, K. Hisazumi, Akira Fukuda
{"title":"Harnessing SMT-Based Bounded Model Checking through Stateless Explicit-State Exploration","authors":"W. Kong, Leyuan Liu, Takahiro Ando, Hirokazu Yatsu, K. Hisazumi, Akira Fukuda","doi":"10.1109/APSEC.2013.55","DOIUrl":"https://doi.org/10.1109/APSEC.2013.55","url":null,"abstract":"We propose a hybrid approach to improving the verification performance of SMT-based bounded model checking for LTL properties. In this approach, stateless explicit-state exploration is utilized to traverse, under the constraints of bounded context switches, the state space of a system design and memorize legal execution paths. These paths are classified according to certain predicates into path clusters, which are then encoded into propositional formulas representing, together with the encoded formula for an LTL property, independent BMC instances. Such BMC instances are solved with SMT solvers running on mutilcores in parallel. Once a counterexample is found for one of the instances, the entire model checking terminates. This hybrid checking procedure progresses in an incremental fashion until either a counterexample is found or the user-specified bound is reached. We have implemented this proposed hybrid approach in a tool called Garakabu2 with CVC4 as its backend solver. The experimental results show that Garakabu2 often outperforms the state-of-the-art pure BMC methods implemented in SAL infinite bounded model checker for both safety and liveness properties.","PeriodicalId":187451,"journal":{"name":"2013 20th Asia-Pacific Software Engineering Conference (APSEC)","volume":"1 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2013-12-02","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"129734637","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}