{"title":"An extension of problem frame notation for software product lines","authors":"Hailang Zuo, M. Mannion, D. Sellier, R. Foley","doi":"10.1109/APSEC.2005.35","DOIUrl":"https://doi.org/10.1109/APSEC.2005.35","url":null,"abstract":"A software product line is a set of software-intensive systems sharing a common set of managed requirements. A technique for requirements analysis of single systems, but rarely applied to product lines, is problem frames. Problem frame theory omits support for the management and exploitation of product line requirements variability. This paper presents some notation to support requirements and machine variability in problem frames. It also describes some transitioning rules between requirements and machines that can help to manage product line evolution. We illustrate our ideas using a mobile phone worked example.","PeriodicalId":359862,"journal":{"name":"12th Asia-Pacific Software Engineering Conference (APSEC'05)","volume":"7 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2005-12-15","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"122342914","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":"Tool support for statistical testing of software components","authors":"Rakesh Shukla, P. Strooper, D. Carrington","doi":"10.1109/APSEC.2005.105","DOIUrl":"https://doi.org/10.1109/APSEC.2005.105","url":null,"abstract":"We describe the \"STSC\" prototype tool that supports the statistical testing of software components. The tool supports a wide range of operational profiles and test oracles for test case generation and output evaluation. The tool also generates appropriate values for different types of input parameters of operations. STSC automatically generates a test driver from an operational profile. This test driver invokes a test oracle that is implemented as a behaviour-checking version of the implementation. To evaluate the flexibility and usability of the tool, it has been applied to several case studies using different types of operational profiles and test oracles.","PeriodicalId":359862,"journal":{"name":"12th Asia-Pacific Software Engineering Conference (APSEC'05)","volume":"9 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2005-12-15","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"124124032","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":"Ad hoc system : a software architecture for ubiquitous environment","authors":"Chih-Chung Lai, Ren-Song Ko, Chia-Kuan Yen","doi":"10.1109/APSEC.2005.24","DOIUrl":"https://doi.org/10.1109/APSEC.2005.24","url":null,"abstract":"We propose an idea that several resource-limited devices may be combined as an ad hoc system to complete a huge computing task. We also discuss an adaptive software architecture, FRAME, for realizing such systems. However, current FRAME implementation requires manually configuration of each participating device, which may be an obstacle for average users. Hence, we propose a new method that uses infrared communication to connect and configure an ad hoc systems. It is not only easy and intuitive but also improves the performance of FRAME. Furthermore, a prototype implementation of the proposed method is demonstrated.","PeriodicalId":359862,"journal":{"name":"12th Asia-Pacific Software Engineering Conference (APSEC'05)","volume":"96 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2005-12-15","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"134456598","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":"Dealing with non-determinism in testing concurrent Java components","authors":"Luke Wildman, Brad Long, P. Strooper","doi":"10.1109/APSEC.2005.58","DOIUrl":"https://doi.org/10.1109/APSEC.2005.58","url":null,"abstract":"The testing of concurrent software components can be difficult due to the inherent non-determinism present in these components. For example, if the same test case is run multiple times, it may produce different results. This non-determinism may lead to problems with determining expected outputs. In this paper, we present and discuss several possible solutions to this problem in the context of testing concurrent Java components using the ConAn testing tool. We then present a recent extension to the tool that provides a general solution to this problem that is sufficient to deal with the level of non-determinism that we have encountered in testing over 20 components with ConAn.","PeriodicalId":359862,"journal":{"name":"12th Asia-Pacific Software Engineering Conference (APSEC'05)","volume":"28 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2005-12-15","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"133712751","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":"Accommodating software development collaboration","authors":"Lei Wu, H. Sahraoui","doi":"10.1109/APSEC.2005.23","DOIUrl":"https://doi.org/10.1109/APSEC.2005.23","url":null,"abstract":"With the rapid progress of Internet technology, more and more software projects adopt e-development to facilitate the software development process in a world wide context. However, collaborative software e-development activity itself is a complex orchestration. It involves many people working together without the barrier of time and space difference. Therefore, how to efficiently monitor and control software e-development in a global perspective becomes an important issue for any Internet-based software e-development project. In this paper, we present a novel approach to tackle this crucial issue by means of controlling e-development process, collaborative task progress and communication quality. Meanwhile, we also present our e-development supporting environment prototype: Caribou, to demonstrate the viability of our approach.","PeriodicalId":359862,"journal":{"name":"12th Asia-Pacific Software Engineering Conference (APSEC'05)","volume":"13 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2005-12-15","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"124585850","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 easy-to-use extension mechanism using XML for an integrated development environment","authors":"Takayuki Omori, Katsuhisa Maruyama","doi":"10.1109/APSEC.2005.34","DOIUrl":"https://doi.org/10.1109/APSEC.2005.34","url":null,"abstract":"Recent integrated development environments (IDEs) have become more extensible tool platforms but it is in fact hard for non-experts to extend or customize them. This paper proposes a mechanism for adding new functionalities to existing IDEs by using two kinds of XML-based configurations. One of them defines relationships between code fragments and the other determines how these relationships are utilized. In these configurations, a user can flexibly combine two kinds of components. They encapsulate either a trigger which expresses when the added functionality is performed or an action which is actually performed due to the trigger. Therefore, the user easily attains the extension of IDEs without knowing programming techniques by only writing XML-based configurations. The experimental results with a prototype of the proposed system show the reduction of efforts to understand proprietary APIs provided by IDEs.","PeriodicalId":359862,"journal":{"name":"12th Asia-Pacific Software Engineering Conference (APSEC'05)","volume":"38 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2005-12-15","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"115766826","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":"Automated refactoring of objects for application partitioning","authors":"Vikram Jamwal, Sridhar V. Iyer","doi":"10.1109/APSEC.2005.45","DOIUrl":"https://doi.org/10.1109/APSEC.2005.45","url":null,"abstract":"Distributed infrastructures are becoming more and more diverse in nature. An application may often need to be redeployed in various scenarios. Ideally, given an application designed for one deployment scenario, one should be able to generate an application version for a new scenario through an automated refactoring process. For this to happen, one of the principal requirements is that application components should be amenable to partitioning. To achieve this: (i) We use a structurally simple and slightly modified model of object called breakable object (BoB), for structuring such applications. BoB can be treated as an object which is designed to be well disposed towards automated refactoring. We also devise a programming model for BoBs in Java called Java/sub BoB/. (ii) We provide algorithms for automated refactoring of a Java/sub BoB/ based program.","PeriodicalId":359862,"journal":{"name":"12th Asia-Pacific Software Engineering Conference (APSEC'05)","volume":"8 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2005-12-15","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"125900651","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":"Call-ordering constraints","authors":"N. Tran, D. Abramson, C. Mingins","doi":"10.1109/APSEC.2005.49","DOIUrl":"https://doi.org/10.1109/APSEC.2005.49","url":null,"abstract":"Several kinds of call-ordering problems have been identified, all of which present subtle difficulties in ensuring the correctness of a sequential program. They include object protocols, synchronisation patterns and re-entrance restrictions. This paper presents call-ordering constraints as a unifying solution to these problems. These constraints are new classes of contracts in addition to traditional preconditions, postconditions and invariants. They extend the traditional notion of behavioural subtyping. The paper shows how constraint inheritance can almost ensure behavioural subtyping conformance. The paper also shows how these constraints may be monitored at run time. Call-ordering constraints are included in the BECON contract system, which has been implemented on the Common Language Infrastructure (CLI).","PeriodicalId":359862,"journal":{"name":"12th Asia-Pacific Software Engineering Conference (APSEC'05)","volume":"64 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2005-12-15","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"131045933","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":"Identifying error proneness in path strata with genetic algorithms","authors":"James R. Birt, R. Sitte","doi":"10.1109/APSEC.2005.69","DOIUrl":"https://doi.org/10.1109/APSEC.2005.69","url":null,"abstract":"In earlier work we have demonstrated that GA can successfully identify error prone paths that have been weighted according to our weighting scheme. In this paper we investigate whether the depth of strata in the software affects the performance of the GA. Our experiments show that the GA performance changes throughout the paths. It performs better in the upper, less in the middle and best in the lower layer of the paths. Although various methods have been applied for detecting and reducing errors in software, little research has been done into partitioning a system into smaller, error prone domains for software quality assurance. To identify error proneness in software paths is important because by identifying them, they can be given priority in code inspections or testing. Our experiments observe to what extent the GA identifies errors seeded into paths using several error seeding strategies. We have compared our GA performance with random path selection.","PeriodicalId":359862,"journal":{"name":"12th Asia-Pacific Software Engineering Conference (APSEC'05)","volume":"28 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2005-12-15","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"134124829","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":"Development of a business process modeling methodology and a tool for sharing business processes","authors":"Rieko Yamamoto, Kouji Yamamoto, Kyoko Ohashi, Junji Inomata","doi":"10.1109/APSEC.2005.61","DOIUrl":"https://doi.org/10.1109/APSEC.2005.61","url":null,"abstract":"Sharing know-how regarding business process modeling activities and best practices can save time in the early phases of business system development. To help developers share know-how and best practices, we have developed a methodology and a tool for business process modeling and have applied it to a system development project. Furthermore, we have developed process-template development techniques to realize granularity-unification of business processes so that business process models can be reused, and have clarified the practical divisions of process models and the design issues concerning each division. These techniques enable the preparation of reuse-oriented business process templates before the business process modeling activity. In this paper, we describe the methodology and tool, including a meta-model and notations we have constructed for business modeling. We then consider the effectiveness of the methodology and tool: in an actual development project, the tool and business process templates decreased development time by 46% or more.","PeriodicalId":359862,"journal":{"name":"12th Asia-Pacific Software Engineering Conference (APSEC'05)","volume":"27 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2005-12-15","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"133601231","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}