{"title":"Efficient Component Based Software Engineering using the TCEM Methodology and the TCET Tool","authors":"Santokh Singh, Cheung Ling Kelly Yu","doi":"10.1109/APSEC.2006.34","DOIUrl":"https://doi.org/10.1109/APSEC.2006.34","url":null,"abstract":"Currently there are no comprehensive tools that can be used to harness the full potential of component based software engineering (CBSE). In this paper, we describe a novel component-based software development methodology, called the \"total component engineering methodology\" (TCEM) that we have conceived, formulated and tested that can be efficiently and effectively applied to every phase of the CBSE process. We also describe a novel and comprehensive visual tool called the \"total component engineering tool\" (TCET) which uses enhanced visual notations and features to efficiently support our new development methodology. This novel tool and methodology complement each other and can be used to produce high-quality component based software that is highly understandable, scalable, maintainable and reusable.","PeriodicalId":341929,"journal":{"name":"2006 13th Asia Pacific Software Engineering Conference (APSEC'06)","volume":"1 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2006-12-06","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"129869003","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":"Security-Oriented Service Composition and Evolution","authors":"Jun Han, K. Khan","doi":"10.1109/APSEC.2006.51","DOIUrl":"https://doi.org/10.1109/APSEC.2006.51","url":null,"abstract":"This paper introduces a framework for security-oriented software service composition and evolution. Key building blocks of the framework are a semantic model for specifying the security objectives and properties at the service and system levels, the negotiation and re-negotiation techniques for service composition and evolution, and the analysis techniques for checking the security compatibility between services and the satisfaction of system-level security goals. It focuses on developing techniques that allow system developers to design required security into service compositions with predictability and to maintain or adapt service compositions in changed security contexts.","PeriodicalId":341929,"journal":{"name":"2006 13th Asia Pacific Software Engineering Conference (APSEC'06)","volume":"39 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2006-12-06","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"130621961","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":"Component composition through architectural patterns for problem frames","authors":"C. Choppy, Denis Hatebur, M. Heisel","doi":"10.1109/APSEC.2006.27","DOIUrl":"https://doi.org/10.1109/APSEC.2006.27","url":null,"abstract":"In this paper, we present a pattern-based software development process using problem frames and corresponding architectural patterns. In decomposing a complex problem into simple subproblems, the relationships between the sub-problems are recorded explicitly. Based on this information, we give guidelines on how to derive the software architecture for the overall problem from the software architectures of the simple subproblems.","PeriodicalId":341929,"journal":{"name":"2006 13th Asia Pacific Software Engineering Conference (APSEC'06)","volume":"62 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2006-12-06","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"116956437","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":"Secrobat: Secure and Robust Component-based Architectures","authors":"A. Vorobiev, Jun Han","doi":"10.1109/APSEC.2006.50","DOIUrl":"https://doi.org/10.1109/APSEC.2006.50","url":null,"abstract":"Software systems, component-based systems (CBS) in particular, have a lot of vulnerabilities that may be exploited by intruders. Companies spend much time and money to \"patch \" them up. It is partly due to the fact that a system's security features are often added to the system after its functional requirements have been addressed. As such, system security features are not systematically designed into the system, and consequently the system has inherent security \"holes\". Therefore, there is a strong need for a systematic engineering approach to developing secure and robust systems, especially distributed systems, by considering functional and security requirements at the same time. In particular, these systems should be highly adaptive and reconfigurable in order to resist different types of attacks and failures. This paper introduces a reference architecture, called Secrobat, for creating secure and robust CBS. It has several key features including defensive components and the adaptive and reconfigurable architecture with the hybrid peer/super-peer structure. The reference architecture is illustrated with an example gaming system.","PeriodicalId":341929,"journal":{"name":"2006 13th Asia Pacific Software Engineering Conference (APSEC'06)","volume":"101 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2006-12-06","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"117277466","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":"Component-based Development of MILLS: A Case Study in the development of an Inter-library Loan Software System","authors":"N. Agarwal, D. Poo, Teo Keng Yong","doi":"10.1109/APSEC.2006.28","DOIUrl":"https://doi.org/10.1109/APSEC.2006.28","url":null,"abstract":"Component-based software development (CBSD) is based on the idea of developing software systems by selecting appropriate off-the-shelf components and integrating them under a specified architecture. Such an approach prevents a software developer from having to reinvent the wheel, reduces software development cost and time, and promotes flexibility and maintainability. In this paper, we describe the application of CBSD in developing a system for automated inter-library loans between the libraries of two major universities of Singapore. Currently, inter-library loan (ILL) is a cumbersome and manual process. Our system helps promote resource-sharing and interoperability and reduces the difficulties involved in the current manual loan system between libraries. Specifically, we describe the CBSD approach, present the design and implementation of the MILLS (managing inter-library loan services) system, and describe how MILLS was developed taking the CBSD approach into consideration. The lessons learnt from this case should be of value to software developers.","PeriodicalId":341929,"journal":{"name":"2006 13th Asia Pacific Software Engineering Conference (APSEC'06)","volume":"119 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2006-12-06","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"123384910","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 framework for software product engineering","authors":"K. Nori, N. Swaminathan","doi":"10.1109/APSEC.2006.5","DOIUrl":"https://doi.org/10.1109/APSEC.2006.5","url":null,"abstract":"Software engineering today is heavily focused on the ideas of process maturity and continuous improvement. Processes are designed to deliver products. Process engineering should ideally rest on theoretical foundations of sound product engineering; however the field is currently lacking such foundations. Drawing inspiration from compiler design, we present a systematic framework for software product engineering that develops the product through successive levels of realization. The framework separates the concerns in software development by relating each level to a knowledge domain and localizing exactly on those qualities that become manifest in that knowledge domain. The basis of the framework is a mathematical model for reasoning about the correctness of realization schemes as well as the transformations between levels, so that each level preserves previously created qualities while adding new desired qualities. We also discuss some of the practical aspects of implementing this approach.","PeriodicalId":341929,"journal":{"name":"2006 13th Asia Pacific Software Engineering Conference (APSEC'06)","volume":"72 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2006-12-06","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"134012144","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}
V. Garcia, E. Almeida, Liana Barachisio Lisboa, A. Martins, S. Meira, D. Lucrédio, Renata Pontin de Mattos Fortes
{"title":"Toward a Code Search Engine Based on the State-of-Art and Practice","authors":"V. Garcia, E. Almeida, Liana Barachisio Lisboa, A. Martins, S. Meira, D. Lucrédio, Renata Pontin de Mattos Fortes","doi":"10.1109/APSEC.2006.57","DOIUrl":"https://doi.org/10.1109/APSEC.2006.57","url":null,"abstract":"Software engineering and reuse-oriented tools have been studied along the last years, aiming to provide help in the software development. With the importance of reuse growing significantly, effective software reuse tools and environments started to be needed. This paper presents and discusses some works that comprise many issues related to source code search tools, covered by university and industry since 90's until today. In the end of the paper, a set of requirements is presented, integrating the features that can be found in most works of the area, serving as a basis for future work toward an effective source code search tool.","PeriodicalId":341929,"journal":{"name":"2006 13th Asia Pacific Software Engineering Conference (APSEC'06)","volume":"44 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2006-12-06","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"133252365","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 Theoretical Perspective on Knowledge Based Organizational Learning","authors":"K. Alagarsamy, S. Justus, K. Iyakutti","doi":"10.1109/APSEC.2006.15","DOIUrl":"https://doi.org/10.1109/APSEC.2006.15","url":null,"abstract":"Knowledge society is dominant in this age of surviving and thriving dominance. A person's or an organization's ability to acquire and share knowledge is their most important competency which is obtained, over a period of time, through the process of learning and experience. In the present context, organizational learning is focused on knowledge generation, its management, sharing and ultimately in the improvement of the organization's processes. Though generation of knowledge is through organizational learning, it has to be marketed by externalization and managed to create a repository of tacit knowledge which helps decision making authorities in improving processes - from business to product development. A theoretical perspective on these concepts is presented here in tune with the present scenario. Also this research work is presented for discussion before a team of knowledge workers and leaders for their valuable comments and future directions. Finally, a set of issues for future study in this area is also proposed along with the concluding remarks.","PeriodicalId":341929,"journal":{"name":"2006 13th Asia Pacific Software Engineering Conference (APSEC'06)","volume":"32 2 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2006-12-06","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"129522336","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 case study of an empirical approach to component requirements in developing a plagiarism detection tool","authors":"N. Hanakawa, Mike Barker","doi":"10.1109/APSEC.2006.1","DOIUrl":"https://doi.org/10.1109/APSEC.2006.1","url":null,"abstract":"Extracting requirements for large-scale software development has become increasingly complicated because many users from different organizations should collaborate with each other. Although use cases and UML diagrams for analyzing requirements are powerful tools, users often have difficulty understanding them. Therefore, we tried to extract detailed requirements via an empirical approach when we developed a plagiarism detection tool for students' reports. Key points of this approach are recording empirical data in an experiment and using an incomplete prototype based on component requirements. By comparing empirical data with output of the incomplete prototype, the detailed requirements are incrementally determined without additional efforts by the users. As a result of this approach, accuracy of the detection tool's output has reached 71%. In addition, we propose a framework for applying an empirical approach to requirements to adapt this approach to various developments.","PeriodicalId":341929,"journal":{"name":"2006 13th Asia Pacific Software Engineering Conference (APSEC'06)","volume":"50 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2006-12-06","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"116223026","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":"Visualizing Clone Cohesion and Coupling","authors":"Z. Jiang, A. Hassan, R. Holt","doi":"10.1109/APSEC.2006.63","DOIUrl":"https://doi.org/10.1109/APSEC.2006.63","url":null,"abstract":"Coupling and cohesion between subsystems are commonly studied metrics when analyzing the architecture of software systems. It is usually desirable for subsystems to have high cohesion within the subsystem and to have low coupling to other subsystems. High cohesion implies cohesive concerns and low coupling implies localized changes. We extend the ideas of coupling and cohesion to code cloning. A code clone is a segment of code that has been created through duplication of another piece of code. Previous research has shown that in some instances code cloning is desirable, whereas in other cases it is not. We believe that it is justifiable to have code cloning within subsystems (high cohesion), whereas it is not justifiable and likely not desirable to have it across subsystems (high coupling). We present an approach, which consists of a framework that generates and filters cloning data and a visualization technique which graphically highlights clone cohesion and coupling between architectural subsystems. Our approach can be used by developers to locate undesirable cloning in their software system. We demonstrate our approach through a case study on the SCSI drivers in the Linux kernel.","PeriodicalId":341929,"journal":{"name":"2006 13th Asia Pacific Software Engineering Conference (APSEC'06)","volume":"2 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2006-12-06","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"128332077","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}