Pub Date : 2000-12-05DOI: 10.1109/APSEC.2000.896731
B. Henderson-Sellers, M. Serour
Object-oriented methodologies and processes advise on how a project team can use object technology to create a software-intensive system. While they offer good advice on software development, they are inadequate in terms of how the organization (or the project team) should change its operational culture to one that uses object technology effectively. In other words, while the process of software development is spelled out with these new OO methodologies, what is needed is a process to put this software development process into operation. We describe how such a process can be created and utilized in engendering change management from a traditional to an OO software development culture.
{"title":"Creating a process for transitioning to object technology","authors":"B. Henderson-Sellers, M. Serour","doi":"10.1109/APSEC.2000.896731","DOIUrl":"https://doi.org/10.1109/APSEC.2000.896731","url":null,"abstract":"Object-oriented methodologies and processes advise on how a project team can use object technology to create a software-intensive system. While they offer good advice on software development, they are inadequate in terms of how the organization (or the project team) should change its operational culture to one that uses object technology effectively. In other words, while the process of software development is spelled out with these new OO methodologies, what is needed is a process to put this software development process into operation. We describe how such a process can be created and utilized in engendering change management from a traditional to an OO software development culture.","PeriodicalId":404621,"journal":{"name":"Proceedings Seventh Asia-Pacific Software Engeering Conference. APSEC 2000","volume":"12 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2000-12-05","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"132163540","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}
Pub Date : 2000-12-05DOI: 10.1109/APSEC.2000.896698
Henrik Hermansson, M. Johansson, L. Lundberg
The telecommunication domain contains many performance-demanding applications. These applications must also be flexible in order to meet new and changing requirements in a fast and cost-effective way. We have studied one such application-the Ericsson Billing Gateway. In order to reduce the cost for introducing new functionality, we broke up the application into distributable components. At the same time, we tried to keep the same or better performance characteristics. A prototype was implemented and compared to the existing application. The evaluations showed that the new architecture was not only easier to change; it also increased the throughput and scalability.
{"title":"A distributed component architecture for a large telecommunication application","authors":"Henrik Hermansson, M. Johansson, L. Lundberg","doi":"10.1109/APSEC.2000.896698","DOIUrl":"https://doi.org/10.1109/APSEC.2000.896698","url":null,"abstract":"The telecommunication domain contains many performance-demanding applications. These applications must also be flexible in order to meet new and changing requirements in a fast and cost-effective way. We have studied one such application-the Ericsson Billing Gateway. In order to reduce the cost for introducing new functionality, we broke up the application into distributable components. At the same time, we tried to keep the same or better performance characteristics. A prototype was implemented and compared to the existing application. The evaluations showed that the new architecture was not only easier to change; it also increased the throughput and scalability.","PeriodicalId":404621,"journal":{"name":"Proceedings Seventh Asia-Pacific Software Engeering Conference. APSEC 2000","volume":"19 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2000-12-05","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"116053965","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}
Pub Date : 2000-12-05DOI: 10.1109/APSEC.2000.896720
Jooyoung Seo, Byoungju Choi
ISO (International Standardization Organization) and the IEC (International Electrotechnical Commission) provide numerous standards for software products and processes. Utilizing those standards specific to a project requires some tailoring to meet the development domain. This paper includes: (1) a test process meta-model, which is a test process defined in standards; (2) "a scheme for tailoring processes" following a component-based development customization technique; and (3) AutoTP, an "automation tool for tailoring", which is derived from XML techniques. AutoTP is a tool in which a standard test process automatically generates a tailored test process by means of a methodology and a domain. In addition, the Rational Objectory process is used as an empirical study in this paper.
{"title":"Tailoring test process by using the component-based development paradigm and the XML technology","authors":"Jooyoung Seo, Byoungju Choi","doi":"10.1109/APSEC.2000.896720","DOIUrl":"https://doi.org/10.1109/APSEC.2000.896720","url":null,"abstract":"ISO (International Standardization Organization) and the IEC (International Electrotechnical Commission) provide numerous standards for software products and processes. Utilizing those standards specific to a project requires some tailoring to meet the development domain. This paper includes: (1) a test process meta-model, which is a test process defined in standards; (2) \"a scheme for tailoring processes\" following a component-based development customization technique; and (3) AutoTP, an \"automation tool for tailoring\", which is derived from XML techniques. AutoTP is a tool in which a standard test process automatically generates a tailored test process by means of a methodology and a domain. In addition, the Rational Objectory process is used as an empirical study in this paper.","PeriodicalId":404621,"journal":{"name":"Proceedings Seventh Asia-Pacific Software Engeering Conference. APSEC 2000","volume":"26 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2000-12-05","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"114768514","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}
Pub Date : 2000-12-05DOI: 10.1109/APSEC.2000.896696
M. Matsumoto, K. Futatsugi
We discuss a support tool for highly reliable component-based software development. The tool assures the high reliability of the output by verifying refinement and by generating connectors. The advantages of the tool are automated refinement verification and automated connector generation. As a software architecture for component-based software, we select the tree architecture, in which components are represented by a projection-style behavioral specification. The input of the tool is: (a) a requirement specification of the target software, (b) a refined specification specifying how to combine the components, and (c) the components themselves. (a) and (b) are projection-style behavioral specifications, while (c) are JavaBeans. The output of the tool is JavaBeans that are obtained by combining (c) and the generated connectors.
{"title":"The support tool for highly reliable component-based software development","authors":"M. Matsumoto, K. Futatsugi","doi":"10.1109/APSEC.2000.896696","DOIUrl":"https://doi.org/10.1109/APSEC.2000.896696","url":null,"abstract":"We discuss a support tool for highly reliable component-based software development. The tool assures the high reliability of the output by verifying refinement and by generating connectors. The advantages of the tool are automated refinement verification and automated connector generation. As a software architecture for component-based software, we select the tree architecture, in which components are represented by a projection-style behavioral specification. The input of the tool is: (a) a requirement specification of the target software, (b) a refined specification specifying how to combine the components, and (c) the components themselves. (a) and (b) are projection-style behavioral specifications, while (c) are JavaBeans. The output of the tool is JavaBeans that are obtained by combining (c) and the generated connectors.","PeriodicalId":404621,"journal":{"name":"Proceedings Seventh Asia-Pacific Software Engeering Conference. APSEC 2000","volume":"48 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2000-12-05","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"114838350","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}
Pub Date : 2000-12-05DOI: 10.1109/APSEC.2000.896677
K. Kang, Ji Y. Lee, Hye J. Kim
A real-time system consists of control software, the hardware controlled by the software, and the environment that physically interacts with the controlled hardware. Simulating control software with simplistic assumptions of the environment characteristics is not sufficient for meaningful real-value simulation. The hybrid systems development methods with their simulation environment are a good solution that provides meaningful real-value co-simulation of the target system and its execution environment. It also gives the results that might be gathered when using on-line test-beds. The problem with most of such methods is that the integration and simulation take place too late because they are done after the target system and its environment are fully developed. This paper shows a co-development method, and its supporting environment, which facilitates the repetitive testing of on-going system specifications.
{"title":"Co-development of real-time systems and their simulation environments","authors":"K. Kang, Ji Y. Lee, Hye J. Kim","doi":"10.1109/APSEC.2000.896677","DOIUrl":"https://doi.org/10.1109/APSEC.2000.896677","url":null,"abstract":"A real-time system consists of control software, the hardware controlled by the software, and the environment that physically interacts with the controlled hardware. Simulating control software with simplistic assumptions of the environment characteristics is not sufficient for meaningful real-value simulation. The hybrid systems development methods with their simulation environment are a good solution that provides meaningful real-value co-simulation of the target system and its execution environment. It also gives the results that might be gathered when using on-line test-beds. The problem with most of such methods is that the integration and simulation take place too late because they are done after the target system and its environment are fully developed. This paper shows a co-development method, and its supporting environment, which facilitates the repetitive testing of on-going system specifications.","PeriodicalId":404621,"journal":{"name":"Proceedings Seventh Asia-Pacific Software Engeering Conference. APSEC 2000","volume":"48 1 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2000-12-05","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"130823037","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}
Pub Date : 2000-12-05DOI: 10.1109/APSEC.2000.896678
I. Hayes
We develop a set of laws for reasoning about real-time programs using assertions (preconditions and postconditions) in the style of Hoare. In the real-time context assertions may refer to the current time and to the value of external inputs, which are not under the direct control of the program and hence not guaranteed to be stable with respect to the passage of time (even if the program does not modify any of the variables under its control). Hence in order to reason about real-time programs, we make use of idle-invariant assertions: assertions that are invariant to just the passage of time.
{"title":"Reasoning about real-time programs using idle-invariant assertions","authors":"I. Hayes","doi":"10.1109/APSEC.2000.896678","DOIUrl":"https://doi.org/10.1109/APSEC.2000.896678","url":null,"abstract":"We develop a set of laws for reasoning about real-time programs using assertions (preconditions and postconditions) in the style of Hoare. In the real-time context assertions may refer to the current time and to the value of external inputs, which are not under the direct control of the program and hence not guaranteed to be stable with respect to the passage of time (even if the program does not modify any of the variables under its control). Hence in order to reason about real-time programs, we make use of idle-invariant assertions: assertions that are invariant to just the passage of time.","PeriodicalId":404621,"journal":{"name":"Proceedings Seventh Asia-Pacific Software Engeering Conference. APSEC 2000","volume":"54 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2000-12-05","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"134339264","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}
Pub Date : 2000-12-05DOI: 10.1109/APSEC.2000.896687
Yusuke Nonaka, K. Ushijima, Jingde Cheng
Large-scale and highly reliable concurrent systems are more and more required and it is indispensable for them to keep on measuring and monitoring in order to ensure their reliability. Some systematic method for developing self-measurement concurrent systems has been needed. Self-measurement programs may be difficult to be developed and maintained in a conventional environment for development. This paper presents the concept of the measurement handler, which is an approach to support development of self-measurement systems with programming languages. As a concrete example, we present the programming language Ada MH, which is an extension of Ada 95 with the measurement handler. In this paper, implementation of a processing system for Ada MH is also presented.
{"title":"Monitoring facilities in languages supporting development of concurrent self-measurement programs","authors":"Yusuke Nonaka, K. Ushijima, Jingde Cheng","doi":"10.1109/APSEC.2000.896687","DOIUrl":"https://doi.org/10.1109/APSEC.2000.896687","url":null,"abstract":"Large-scale and highly reliable concurrent systems are more and more required and it is indispensable for them to keep on measuring and monitoring in order to ensure their reliability. Some systematic method for developing self-measurement concurrent systems has been needed. Self-measurement programs may be difficult to be developed and maintained in a conventional environment for development. This paper presents the concept of the measurement handler, which is an approach to support development of self-measurement systems with programming languages. As a concrete example, we present the programming language Ada MH, which is an extension of Ada 95 with the measurement handler. In this paper, implementation of a processing system for Ada MH is also presented.","PeriodicalId":404621,"journal":{"name":"Proceedings Seventh Asia-Pacific Software Engeering Conference. APSEC 2000","volume":"45 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2000-12-05","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"121910542","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}
Pub Date : 2000-12-05DOI: 10.1109/APSEC.2000.896737
M. Nowostawski, Geoff Bush, M. Purvis, Stephen Cranefield
The use of modelling abstractions to map from items in the real-world to objects in the computational domain is useful both for the effective implementation of abstract problem solutions and for the management of software complexity. This paper discusses the new approach of agent-oriented software engineering (AOSE), which uses the notion of an autonomous agent as its fundamental modelling abstraction. For the AOSE approach to be fully exploited, software engineers must be able to gain leverage from an agent software architecture and framework, and there are several such frameworks now publicly available. At the present time however there is little information concerning the options that are available and what needs to be considered when choosing or developing an agent framework. We consider three different agent software architectures that are (or will be) publicly available and evaluate some of the design and architectural differences and trade-offs that are associated with them and their impact on agent-oriented software development. Our discussion examines these frameworks in the context of an example in the area of distributed information systems.
{"title":"Platforms for agent-oriented software engineering","authors":"M. Nowostawski, Geoff Bush, M. Purvis, Stephen Cranefield","doi":"10.1109/APSEC.2000.896737","DOIUrl":"https://doi.org/10.1109/APSEC.2000.896737","url":null,"abstract":"The use of modelling abstractions to map from items in the real-world to objects in the computational domain is useful both for the effective implementation of abstract problem solutions and for the management of software complexity. This paper discusses the new approach of agent-oriented software engineering (AOSE), which uses the notion of an autonomous agent as its fundamental modelling abstraction. For the AOSE approach to be fully exploited, software engineers must be able to gain leverage from an agent software architecture and framework, and there are several such frameworks now publicly available. At the present time however there is little information concerning the options that are available and what needs to be considered when choosing or developing an agent framework. We consider three different agent software architectures that are (or will be) publicly available and evaluate some of the design and architectural differences and trade-offs that are associated with them and their impact on agent-oriented software development. Our discussion examines these frameworks in the context of an example in the area of distributed information systems.","PeriodicalId":404621,"journal":{"name":"Proceedings Seventh Asia-Pacific Software Engeering Conference. APSEC 2000","volume":"1 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2000-12-05","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"129761160","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}
Pub Date : 2000-12-05DOI: 10.1109/APSEC.2000.896684
Yoshinao Isobe, K. Ohmaki
We define a process algebra DS@ to formally describe distributed systems and a process logic SP@ to formally describe their specifications. Then, we present a method to synthesize a distributed system (described in DS@) from given specifications (described in SP@). The main contribution is to show how to check the satisfiability of process logic in which concurrent behavior is distinct from interleaving behavior (i.e. considering true concurrency).
{"title":"A process logic for distributed system synthesis","authors":"Yoshinao Isobe, K. Ohmaki","doi":"10.1109/APSEC.2000.896684","DOIUrl":"https://doi.org/10.1109/APSEC.2000.896684","url":null,"abstract":"We define a process algebra DS@ to formally describe distributed systems and a process logic SP@ to formally describe their specifications. Then, we present a method to synthesize a distributed system (described in DS@) from given specifications (described in SP@). The main contribution is to show how to check the satisfiability of process logic in which concurrent behavior is distinct from interleaving behavior (i.e. considering true concurrency).","PeriodicalId":404621,"journal":{"name":"Proceedings Seventh Asia-Pacific Software Engeering Conference. APSEC 2000","volume":"2 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2000-12-05","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"117012351","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}
Pub Date : 2000-12-05DOI: 10.1109/APSEC.2000.896706
W. Tan
The Object-Z notation is a good meta-language that can be used to specify the denotational semantics of programming languages. It has been effectively applied to some categories of languages. These include the procedural languages, the object-oriented procedural languages and specification languages. To widen these categories, this paper applies Object-Z to the specification of the semantics of a small typed functional language.
{"title":"A semantic model of a small typed functional language using Object-Z","authors":"W. Tan","doi":"10.1109/APSEC.2000.896706","DOIUrl":"https://doi.org/10.1109/APSEC.2000.896706","url":null,"abstract":"The Object-Z notation is a good meta-language that can be used to specify the denotational semantics of programming languages. It has been effectively applied to some categories of languages. These include the procedural languages, the object-oriented procedural languages and specification languages. To widen these categories, this paper applies Object-Z to the specification of the semantics of a small typed functional language.","PeriodicalId":404621,"journal":{"name":"Proceedings Seventh Asia-Pacific Software Engeering Conference. APSEC 2000","volume":"5 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2000-12-05","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"122403741","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}