In order for a software system to be of value, it should meet both functional requirements (FRs) and non-functional requirements (NFRs). Concerning FRs, UML has been used as the de facto object-oriented analysis and design notation. Concerning NFRs, the NFR framework extends, and complements, UML, by treating NFRs as potentially conflicting or synergistic softgoals to be achieved, thereby allowing for the consideration of alternatives and analysis of trade-offs among the alternatives. Albeit the complementary nature of the two, UML and the NFR framework offer two different notations -syntactically, semantically and visually, which makes it difficult to produce requirements models that integrate both FRs and NFRs. In this paper, we propose an integrated modeling language by extending UML with the NFR framework using the standard extension mechanism called UML profile where we define a metamodel to represent the concepts in the NFR framework and identify the extension points for integrating the two notations. We also show how CASE tools may use this profile in building an integrated requirements model based on a model of the well known London ambulance case study.
{"title":"A UML profile for goal-oriented and use case-driven representation of NFRs and FRs","authors":"Sam Supakkul, L. Chung","doi":"10.1109/SERA.2005.19","DOIUrl":"https://doi.org/10.1109/SERA.2005.19","url":null,"abstract":"In order for a software system to be of value, it should meet both functional requirements (FRs) and non-functional requirements (NFRs). Concerning FRs, UML has been used as the de facto object-oriented analysis and design notation. Concerning NFRs, the NFR framework extends, and complements, UML, by treating NFRs as potentially conflicting or synergistic softgoals to be achieved, thereby allowing for the consideration of alternatives and analysis of trade-offs among the alternatives. Albeit the complementary nature of the two, UML and the NFR framework offer two different notations -syntactically, semantically and visually, which makes it difficult to produce requirements models that integrate both FRs and NFRs. In this paper, we propose an integrated modeling language by extending UML with the NFR framework using the standard extension mechanism called UML profile where we define a metamodel to represent the concepts in the NFR framework and identify the extension points for integrating the two notations. We also show how CASE tools may use this profile in building an integrated requirements model based on a model of the well known London ambulance case study.","PeriodicalId":424175,"journal":{"name":"Third ACIS Int'l Conference on Software Engineering Research, Management and Applications (SERA'05)","volume":"1997 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2005-08-11","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"116684421","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}
In this paper, we describe a class abstraction technique (CAT) for Java programs that support the testing process by capturing aspects of software complexity based on the combination of class characteristics. These class characteristics relate to properties of the class features such as concurrency, polymorphism, exception handling, and accessibility as well as relationships between classes. Our taxonomy (CAT) for Java allows us to generate a finite number of possible class groups (taxa). Each class C in a Java program is cataloged into a group that summarizes the dependencies with other types realized through declarations and definitions in C. We also provide a high-level design for a tool to catalog Java classes based on our taxonomy.
{"title":"A class abstraction technique to support the analysis of Java programs during testing","authors":"David Crowther, Djuradj Babich, Peter J. Clarke","doi":"10.1109/SERA.2005.1","DOIUrl":"https://doi.org/10.1109/SERA.2005.1","url":null,"abstract":"In this paper, we describe a class abstraction technique (CAT) for Java programs that support the testing process by capturing aspects of software complexity based on the combination of class characteristics. These class characteristics relate to properties of the class features such as concurrency, polymorphism, exception handling, and accessibility as well as relationships between classes. Our taxonomy (CAT) for Java allows us to generate a finite number of possible class groups (taxa). Each class C in a Java program is cataloged into a group that summarizes the dependencies with other types realized through declarations and definitions in C. We also provide a high-level design for a tool to catalog Java classes based on our taxonomy.","PeriodicalId":424175,"journal":{"name":"Third ACIS Int'l Conference on Software Engineering Research, Management and Applications (SERA'05)","volume":"10 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2005-08-11","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"131262513","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}
Product line engineering (PLE) is an emerging reuse approach, and it has two processes; core asset engineering and application engineering. Various artifacts are produced in PLE, and there is no strong consensus on the key elements of each artifact. Moreover, precise mappings and relationships among the artifacts are yet to define. In order to apply PLE practically and to automate PLE process, elements of artifacts and their relationships should be precisely specified. In this paper, we first present a generic PLE process based on representative PLE approaches. Then, we define meta-models of PLE artifacts, to show how each artifact can be represented at conceptual and physical levels. Finally, we specify an overall traceability map, trace links and mapping relationships. With our foundation of PLE traceability, PLE artifacts such as core assets and instantiated products can be more efficiently and correctly developed. Also, this work paves the way to semi-automate the overall PLE process.
{"title":"Traceability map: foundations to automate for product line engineering","authors":"Soo Dong Kim, Soo-Ho Chang, H. La","doi":"10.1109/SERA.2005.66","DOIUrl":"https://doi.org/10.1109/SERA.2005.66","url":null,"abstract":"Product line engineering (PLE) is an emerging reuse approach, and it has two processes; core asset engineering and application engineering. Various artifacts are produced in PLE, and there is no strong consensus on the key elements of each artifact. Moreover, precise mappings and relationships among the artifacts are yet to define. In order to apply PLE practically and to automate PLE process, elements of artifacts and their relationships should be precisely specified. In this paper, we first present a generic PLE process based on representative PLE approaches. Then, we define meta-models of PLE artifacts, to show how each artifact can be represented at conceptual and physical levels. Finally, we specify an overall traceability map, trace links and mapping relationships. With our foundation of PLE traceability, PLE artifacts such as core assets and instantiated products can be more efficiently and correctly developed. Also, this work paves the way to semi-automate the overall PLE process.","PeriodicalId":424175,"journal":{"name":"Third ACIS Int'l Conference on Software Engineering Research, Management and Applications (SERA'05)","volume":"22 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2005-08-11","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"131315184","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}
Nowadays IT industry drives to improve the software process on marketing and financial benefits. For efficient process improvement, work performance should be enhanced in line with organization's vision by identifying weakness for improvement and risks with process assessment results and then mapping them in the software development environment. According to organization's vision, plans should be developed for marketing and financial strategic objectives. For each plan, improvement strategies should be developed for each work performance unit such as quality, delivery, cycle time, and waste. Process attributes in each unit should be identified and improvement methods shall be determined for them. In order to suggest a PPM (project performing measure) model to quantitatively measure organization's project performing capability and make an optimal decision for process improvement, this paper statistically analyzes SPICE assessment results of 2,392 weakness for improvement by process for 49 appraisals and 476 processes which were assessed through KASPA (Korea Association of Software Process Assessors) from 1999 to 2004 and then makes SEF (SPICE experience factory). It also presents scores on project performing capability and improvement effects by level, and presents weakness for improvement by priority in the performance unit by level. And finally, this paper suggests an OTF (opportunity tree framework) model to show optimal process improvement strategies.
{"title":"Design of opportunity tree framework for effective process improvement based on quantitative project performance","authors":"Ki-Won Song, Kyung-Whan Lee","doi":"10.1109/SERA.2005.33","DOIUrl":"https://doi.org/10.1109/SERA.2005.33","url":null,"abstract":"Nowadays IT industry drives to improve the software process on marketing and financial benefits. For efficient process improvement, work performance should be enhanced in line with organization's vision by identifying weakness for improvement and risks with process assessment results and then mapping them in the software development environment. According to organization's vision, plans should be developed for marketing and financial strategic objectives. For each plan, improvement strategies should be developed for each work performance unit such as quality, delivery, cycle time, and waste. Process attributes in each unit should be identified and improvement methods shall be determined for them. In order to suggest a PPM (project performing measure) model to quantitatively measure organization's project performing capability and make an optimal decision for process improvement, this paper statistically analyzes SPICE assessment results of 2,392 weakness for improvement by process for 49 appraisals and 476 processes which were assessed through KASPA (Korea Association of Software Process Assessors) from 1999 to 2004 and then makes SEF (SPICE experience factory). It also presents scores on project performing capability and improvement effects by level, and presents weakness for improvement by priority in the performance unit by level. And finally, this paper suggests an OTF (opportunity tree framework) model to show optimal process improvement strategies.","PeriodicalId":424175,"journal":{"name":"Third ACIS Int'l Conference on Software Engineering Research, Management and Applications (SERA'05)","volume":"21 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2005-08-11","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"117141796","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}
Uses cases are the most widely accepted notation despite their restricted expressiveness and overloaded semantic. Other more sophisticated modeling techniques have been developed independently of any other ones and/or for specific application domains. These techniques often provide broad expressiveness but do not include any scalability or any integration with other approaches. In this work, we present a proposal for requirements modeling that allows the integration of the expressiveness of some of the most relevant approaches in the requirements engineering arena. By focusing on the scalability with respect to expressiveness and adaptability to the application domain, we have established some basic guidelines and extension mechanisms that give coherence and semantic precision to our approach.
{"title":"Integrating expressiveness of modern requirements modeling approaches","authors":"Elena Navarro, P. Letelier, I. Ramos","doi":"10.1109/SERA.2005.46","DOIUrl":"https://doi.org/10.1109/SERA.2005.46","url":null,"abstract":"Uses cases are the most widely accepted notation despite their restricted expressiveness and overloaded semantic. Other more sophisticated modeling techniques have been developed independently of any other ones and/or for specific application domains. These techniques often provide broad expressiveness but do not include any scalability or any integration with other approaches. In this work, we present a proposal for requirements modeling that allows the integration of the expressiveness of some of the most relevant approaches in the requirements engineering arena. By focusing on the scalability with respect to expressiveness and adaptability to the application domain, we have established some basic guidelines and extension mechanisms that give coherence and semantic precision to our approach.","PeriodicalId":424175,"journal":{"name":"Third ACIS Int'l Conference on Software Engineering Research, Management and Applications (SERA'05)","volume":"34 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2005-08-11","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"123492811","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}
In this paper, we survey and analyze the actual conditions of EDI system for B2B business of transport companies in Korea. As the result of our analyses, it comes an old fashioned EDI system at harbor and logistics industry, and the VAN based systems are still widely used in Korea. In conclusion, the next generation EDI, XML/EDI, is very effective to solve these kinds of problems. So, we suggest and implement a scheme of XML/EDI as a substitute for the traditional one. We design and implement the XML/EDI system on B2B of shipping request to show the effectiveness and strength of XML/EDI over the traditional EDI. At first, we analyze the standard items of shipping request EDI, and define the document by the DTD of shipping request. And we implement the document creation module in order to generate the document without user's knowledge of XML, and also implement XML storage module to store the generated XML document.
{"title":"Frameworks on new XML/EDI system for B2B shipping companies in Korea","authors":"Soung Won Kim, R. Jung, Myoung Soo Kim","doi":"10.1109/SERA.2005.42","DOIUrl":"https://doi.org/10.1109/SERA.2005.42","url":null,"abstract":"In this paper, we survey and analyze the actual conditions of EDI system for B2B business of transport companies in Korea. As the result of our analyses, it comes an old fashioned EDI system at harbor and logistics industry, and the VAN based systems are still widely used in Korea. In conclusion, the next generation EDI, XML/EDI, is very effective to solve these kinds of problems. So, we suggest and implement a scheme of XML/EDI as a substitute for the traditional one. We design and implement the XML/EDI system on B2B of shipping request to show the effectiveness and strength of XML/EDI over the traditional EDI. At first, we analyze the standard items of shipping request EDI, and define the document by the DTD of shipping request. And we implement the document creation module in order to generate the document without user's knowledge of XML, and also implement XML storage module to store the generated XML document.","PeriodicalId":424175,"journal":{"name":"Third ACIS Int'l Conference on Software Engineering Research, Management and Applications (SERA'05)","volume":"14 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2005-08-11","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"124601749","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}
Hyunsang Youn, Sun-myoung Hwang, H. Youn, Eunseok Lee
Agent based development is a new technology that has been recently used in many domains. However, the development of an agent-based system can be difficult and time-consuming for inexperienced developers. To address this problem, in this paper, we propose a pattern based agent development and support tool. This approach facilitates rapid agent development and addresses common design problem. The agent patterns are classified according to function. We apply this approach for agent development, based on a travel assistant scenario.
{"title":"Next generation agent development supporting tool: case study","authors":"Hyunsang Youn, Sun-myoung Hwang, H. Youn, Eunseok Lee","doi":"10.1109/SERA.2005.53","DOIUrl":"https://doi.org/10.1109/SERA.2005.53","url":null,"abstract":"Agent based development is a new technology that has been recently used in many domains. However, the development of an agent-based system can be difficult and time-consuming for inexperienced developers. To address this problem, in this paper, we propose a pattern based agent development and support tool. This approach facilitates rapid agent development and addresses common design problem. The agent patterns are classified according to function. We apply this approach for agent development, based on a travel assistant scenario.","PeriodicalId":424175,"journal":{"name":"Third ACIS Int'l Conference on Software Engineering Research, Management and Applications (SERA'05)","volume":"8 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2005-08-11","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"124140084","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}
R. Lee, A. Harikumar, C. Chiang, Hae-Sool Yang, Haeng-Kon Kim, Byeongdo Kang
Components are the basic building blocks of enterprise and distributed applications. Component-based development (CBD) is the technique of using a component framework to develop components and it focuses on developing large software systems by integrating previously existing software components. Software development based on component based architecture is already in wide use throughout the software industry. Component based development makes it possible to assemble an application from a repository of components developed in various languages by homogeneous or heterogeneous composition. Web services provide an easy way to extend component based development by adopting open Internet standards. Web services represent an evolution of the Web to allow the open and flexible interaction of applications over the Internet. Web services standards provide a high level of interoperability across platforms, programming languages and applications. In our current research we have created a model for automatically converting components created in different languages to Web services. The components that are developed in various languages are deployed dynamically (just in time) in the Web servers by using custom built deployers. Using this model the users can access the components that reside in the server using open Internet standards, without having to worry about the language and platform restrictions. The security aspects to access the Web services were also considered while implementing the model.
{"title":"A framework for dynamically converting components to Web services","authors":"R. Lee, A. Harikumar, C. Chiang, Hae-Sool Yang, Haeng-Kon Kim, Byeongdo Kang","doi":"10.1109/SERA.2005.8","DOIUrl":"https://doi.org/10.1109/SERA.2005.8","url":null,"abstract":"Components are the basic building blocks of enterprise and distributed applications. Component-based development (CBD) is the technique of using a component framework to develop components and it focuses on developing large software systems by integrating previously existing software components. Software development based on component based architecture is already in wide use throughout the software industry. Component based development makes it possible to assemble an application from a repository of components developed in various languages by homogeneous or heterogeneous composition. Web services provide an easy way to extend component based development by adopting open Internet standards. Web services represent an evolution of the Web to allow the open and flexible interaction of applications over the Internet. Web services standards provide a high level of interoperability across platforms, programming languages and applications. In our current research we have created a model for automatically converting components created in different languages to Web services. The components that are developed in various languages are deployed dynamically (just in time) in the Web servers by using custom built deployers. Using this model the users can access the components that reside in the server using open Internet standards, without having to worry about the language and platform restrictions. The security aspects to access the Web services were also considered while implementing the model.","PeriodicalId":424175,"journal":{"name":"Third ACIS Int'l Conference on Software Engineering Research, Management and Applications (SERA'05)","volume":"43 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2005-08-11","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"126846447","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}
Software quality evaluation based on ISO/IEC 9126 and ISO/IEC 14598 has been widely accepted in various areas. However, these standards for software quality do not provide practical guidelines to apply the quality model and the evaluation process of software products. And the quality management in most software projects has been conducted by managing defects without applying the standard quality model. Thus, we propose a software product evaluation process (SPEP) to support the component based development (CBD). The SPEP adopts a tailored process from the standard evaluation process with applying weights of quality characteristics and checklists for the CBD artifacts. We also show a trial evaluation case through applying the SPEP to a small-scale software project. As a result, we believe that the SPEP will contribute to acquire high quality software.
{"title":"A software product evaluation process for supporting the component based development","authors":"Kilsup Lee, Sung Jong Lee","doi":"10.1109/SERA.2005.17","DOIUrl":"https://doi.org/10.1109/SERA.2005.17","url":null,"abstract":"Software quality evaluation based on ISO/IEC 9126 and ISO/IEC 14598 has been widely accepted in various areas. However, these standards for software quality do not provide practical guidelines to apply the quality model and the evaluation process of software products. And the quality management in most software projects has been conducted by managing defects without applying the standard quality model. Thus, we propose a software product evaluation process (SPEP) to support the component based development (CBD). The SPEP adopts a tailored process from the standard evaluation process with applying weights of quality characteristics and checklists for the CBD artifacts. We also show a trial evaluation case through applying the SPEP to a small-scale software project. As a result, we believe that the SPEP will contribute to acquire high quality software.","PeriodicalId":424175,"journal":{"name":"Third ACIS Int'l Conference on Software Engineering Research, Management and Applications (SERA'05)","volume":"53 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2005-08-11","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"127782249","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}
It has become a common practice to reuse validated software components to shorten development periods and to increase the software quality. Component-based development is an effective reuse technology, which extensively utilizes object-oriented design (OOD). Therefore, it is an economical approach to generate component-based design (CBD) from OOD. In this paper, we propose techniques for transforming OOD into CBD using Object-Z specifications. We first show how the structural, functional, and dynamic aspects of OOD can be specified in Object-Z. Then, we also present formal specifications of CBD in Component-Z, which is based on Object-Z and used to specify CBD. Using formal specifications of both OOD and CBD, we propose a set of rules for transforming OOD into CBD. By using our approach, OOD can be reused in generating CBD and the resulting CBD can be effectively implemented by utilizing objects in EJB, .NET, or CORBA. Also, this research provides a foundation for automating the transformation of OOD into CBD.
{"title":"A method to transform object-oriented design into component-based design using object-Z","authors":"S. Shin, Soo Dong Kim","doi":"10.1109/SERA.2005.11","DOIUrl":"https://doi.org/10.1109/SERA.2005.11","url":null,"abstract":"It has become a common practice to reuse validated software components to shorten development periods and to increase the software quality. Component-based development is an effective reuse technology, which extensively utilizes object-oriented design (OOD). Therefore, it is an economical approach to generate component-based design (CBD) from OOD. In this paper, we propose techniques for transforming OOD into CBD using Object-Z specifications. We first show how the structural, functional, and dynamic aspects of OOD can be specified in Object-Z. Then, we also present formal specifications of CBD in Component-Z, which is based on Object-Z and used to specify CBD. Using formal specifications of both OOD and CBD, we propose a set of rules for transforming OOD into CBD. By using our approach, OOD can be reused in generating CBD and the resulting CBD can be effectively implemented by utilizing objects in EJB, .NET, or CORBA. Also, this research provides a foundation for automating the transformation of OOD into CBD.","PeriodicalId":424175,"journal":{"name":"Third ACIS Int'l Conference on Software Engineering Research, Management and Applications (SERA'05)","volume":"91 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2005-08-11","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"134470243","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}