Pub Date : 1993-11-01DOI: 10.1109/CMPSAC.1993.404213
K. Genji, M. Ishiwaka, T. Ogihara, K. Inoue
This article proposes a process-centered project management system to facilitate controlling a wide variety of project activities. The essential idea is to employ software process descriptions as vehicles of exchanging activity plans between a project manager and a large number of staff. The system allows a manager to plan and monitor overall project processes which are stepwise particularized according to actual processes dynamically determined by individual staff. By the cooperative process description and stepwise particularization of software processes, a wide variety of software project activities can be coordinated in advance to lead the project to success. This article also proposes a graphical process representation method which maps software processes into a directed graph.<>
{"title":"Process-centered project management system by stepwise particularizing software process","authors":"K. Genji, M. Ishiwaka, T. Ogihara, K. Inoue","doi":"10.1109/CMPSAC.1993.404213","DOIUrl":"https://doi.org/10.1109/CMPSAC.1993.404213","url":null,"abstract":"This article proposes a process-centered project management system to facilitate controlling a wide variety of project activities. The essential idea is to employ software process descriptions as vehicles of exchanging activity plans between a project manager and a large number of staff. The system allows a manager to plan and monitor overall project processes which are stepwise particularized according to actual processes dynamically determined by individual staff. By the cooperative process description and stepwise particularization of software processes, a wide variety of software project activities can be coordinated in advance to lead the project to success. This article also proposes a graphical process representation method which maps software processes into a directed graph.<<ETX>>","PeriodicalId":375808,"journal":{"name":"Proceedings of 1993 IEEE 17th International Computer Software and Applications Conference COMPSAC '93","volume":"18 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"1993-11-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"125146832","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 : 1993-11-01DOI: 10.1109/CMPSAC.1993.404184
V. Bharghavan, C. Ramamoorthy
We have built a distributed discrete-event simulator called Empathy. This paper describes some aspects of the Empathy simulation algorithm. Optimistic simulation incurs enormous memory overhead. In this paper, we propose an algorithm for optimistic simulation that is based on the concept of local conservative control for commitment of events. This algorithm reduces the memory overhead by an average of 30% and reduces the aggregate computational time for simulation by up to 25%.<>
{"title":"Efficient commitment of events in distributed simulation","authors":"V. Bharghavan, C. Ramamoorthy","doi":"10.1109/CMPSAC.1993.404184","DOIUrl":"https://doi.org/10.1109/CMPSAC.1993.404184","url":null,"abstract":"We have built a distributed discrete-event simulator called Empathy. This paper describes some aspects of the Empathy simulation algorithm. Optimistic simulation incurs enormous memory overhead. In this paper, we propose an algorithm for optimistic simulation that is based on the concept of local conservative control for commitment of events. This algorithm reduces the memory overhead by an average of 30% and reduces the aggregate computational time for simulation by up to 25%.<<ETX>>","PeriodicalId":375808,"journal":{"name":"Proceedings of 1993 IEEE 17th International Computer Software and Applications Conference COMPSAC '93","volume":"55 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"1993-11-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"116629202","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 : 1993-11-01DOI: 10.1109/CMPSAC.1993.404180
Mei-Mei Fu, P. Dasgupta
The advantages of object-oriented programming systems are well known. However, in general, they do not support long-lived objects, nor do they allow concurrent sharing or dynamic re-use of language defined objects. Persistent object systems address some of these shortfalls. In this paper we present a design and implementation of a persistent object system that uses memory-mapping to directly map objects from the persistent store into the address space of user programs. Memory mapping makes the management and manipulation of persistent objects simpler. In particular, complex object structures can be executed (shared) concurrently on behalf of separate applications. A simple language extension has been designed and added to C++ to make the programming of persistence, sharing, synchronization and consistency control expressible. With efficient run-time support for persistent pointer resolution and consistency maintenance, this approach can provide much finer-grain execution concurrentcy and sharing, easier object navigation, simpler programability and possibly better performance, than object-oriented database systems.<>
{"title":"A concurrent programming environment for memory-mapped persistent object systems","authors":"Mei-Mei Fu, P. Dasgupta","doi":"10.1109/CMPSAC.1993.404180","DOIUrl":"https://doi.org/10.1109/CMPSAC.1993.404180","url":null,"abstract":"The advantages of object-oriented programming systems are well known. However, in general, they do not support long-lived objects, nor do they allow concurrent sharing or dynamic re-use of language defined objects. Persistent object systems address some of these shortfalls. In this paper we present a design and implementation of a persistent object system that uses memory-mapping to directly map objects from the persistent store into the address space of user programs. Memory mapping makes the management and manipulation of persistent objects simpler. In particular, complex object structures can be executed (shared) concurrently on behalf of separate applications. A simple language extension has been designed and added to C++ to make the programming of persistence, sharing, synchronization and consistency control expressible. With efficient run-time support for persistent pointer resolution and consistency maintenance, this approach can provide much finer-grain execution concurrentcy and sharing, easier object navigation, simpler programability and possibly better performance, than object-oriented database systems.<<ETX>>","PeriodicalId":375808,"journal":{"name":"Proceedings of 1993 IEEE 17th International Computer Software and Applications Conference COMPSAC '93","volume":"5 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"1993-11-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"134027396","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 : 1993-11-01DOI: 10.1109/CMPSAC.1993.404218
J. B. Thompson, S. Stobart
The discipline of software engineering promotes the use of systematic methods, automated tools and quality assurance procedures within software development. In this paper we place these practices within the UK context. We report the results from various surveys and research investigations which we have undertaken relating to the acceptance of these practices within the UK. From these results we are able to draw conclusions regarding the current and future levels of use across the sector and we identify the major problems which are constraining progress. We also outline the role, which we believe that educational institutions must undertake, for there to be a significant long term improvement and we report the approaches that are currently being adopted within courses at our own institution. It is our aim that this paper should not simply report facts and draw conclusions but that it should: encourage reflection, provoke discussion and stimulate initiatives within both industry and educational institutions.<>
{"title":"Software engineering in the commercial sector present and future: A United Kingdom perspective","authors":"J. B. Thompson, S. Stobart","doi":"10.1109/CMPSAC.1993.404218","DOIUrl":"https://doi.org/10.1109/CMPSAC.1993.404218","url":null,"abstract":"The discipline of software engineering promotes the use of systematic methods, automated tools and quality assurance procedures within software development. In this paper we place these practices within the UK context. We report the results from various surveys and research investigations which we have undertaken relating to the acceptance of these practices within the UK. From these results we are able to draw conclusions regarding the current and future levels of use across the sector and we identify the major problems which are constraining progress. We also outline the role, which we believe that educational institutions must undertake, for there to be a significant long term improvement and we report the approaches that are currently being adopted within courses at our own institution. It is our aim that this paper should not simply report facts and draw conclusions but that it should: encourage reflection, provoke discussion and stimulate initiatives within both industry and educational institutions.<<ETX>>","PeriodicalId":375808,"journal":{"name":"Proceedings of 1993 IEEE 17th International Computer Software and Applications Conference COMPSAC '93","volume":"17 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"1993-11-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"133144541","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 : 1993-11-01DOI: 10.1109/CMPSAC.1993.404230
M. Takizawa, Hiroya Mita
In distributed applications like groupware, group communication among multiple entities is required. The local area networks (LANs) and radio networks provide broadcast communication at the media access control (MAC) layer, that is, every entity can receive every protocol data unit (PDU) transmitted in the network. Group communication among multiple entities can be easily realized by these networks. One problem in the broadcast network is how to provide secure communication for the group. In this paper, we discuss how to provide secure group communication in the presence of attacks by malicious entities. The protocol is based on the distributed control scheme by using less-secure broadcast networks. A group of entities is named a cluster. By the protocol, only and all the entities in the cluster can agree on a same secret key by exchanging the nonce enciphered by the public key. A subset of the cluster may require such secure communication that the other entities in the cluster cannot join the communication. In this paper, we discuss how to establish the secure subcluster communication in the cluster.<>
{"title":"Secure group communication protocol for distributed systems","authors":"M. Takizawa, Hiroya Mita","doi":"10.1109/CMPSAC.1993.404230","DOIUrl":"https://doi.org/10.1109/CMPSAC.1993.404230","url":null,"abstract":"In distributed applications like groupware, group communication among multiple entities is required. The local area networks (LANs) and radio networks provide broadcast communication at the media access control (MAC) layer, that is, every entity can receive every protocol data unit (PDU) transmitted in the network. Group communication among multiple entities can be easily realized by these networks. One problem in the broadcast network is how to provide secure communication for the group. In this paper, we discuss how to provide secure group communication in the presence of attacks by malicious entities. The protocol is based on the distributed control scheme by using less-secure broadcast networks. A group of entities is named a cluster. By the protocol, only and all the entities in the cluster can agree on a same secret key by exchanging the nonce enciphered by the public key. A subset of the cluster may require such secure communication that the other entities in the cluster cannot join the communication. In this paper, we discuss how to establish the secure subcluster communication in the cluster.<<ETX>>","PeriodicalId":375808,"journal":{"name":"Proceedings of 1993 IEEE 17th International Computer Software and Applications Conference COMPSAC '93","volume":"29 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"1993-11-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"121919619","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 : 1993-11-01DOI: 10.1109/CMPSAC.1993.404207
Joanne L. Boyd, G. Karam
This paper presents the Entity Behavior Description (EBD) modelling technique for specifying the behavioral requirements of a set of communicating entities in a concurrent system. EBDs are finite state machines which describe the abstract behaviour of an entity. This abstract behavior is defined as the combination of the application-specific behavior, and the semantics of the communications. EBDs are given formal operational semantics which explicitly separate these two behavioral components; and, as such, are a fundamental component of a design process which emphasizes the strong traceability of behavioral requirements in a design.<>
{"title":"Entity behaviour descriptions-A specification model for communicating entities","authors":"Joanne L. Boyd, G. Karam","doi":"10.1109/CMPSAC.1993.404207","DOIUrl":"https://doi.org/10.1109/CMPSAC.1993.404207","url":null,"abstract":"This paper presents the Entity Behavior Description (EBD) modelling technique for specifying the behavioral requirements of a set of communicating entities in a concurrent system. EBDs are finite state machines which describe the abstract behaviour of an entity. This abstract behavior is defined as the combination of the application-specific behavior, and the semantics of the communications. EBDs are given formal operational semantics which explicitly separate these two behavioral components; and, as such, are a fundamental component of a design process which emphasizes the strong traceability of behavioral requirements in a design.<<ETX>>","PeriodicalId":375808,"journal":{"name":"Proceedings of 1993 IEEE 17th International Computer Software and Applications Conference COMPSAC '93","volume":"21 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"1993-11-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"124829991","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 : 1993-11-01DOI: 10.1109/CMPSAC.1993.404185
K. Suzaki, Takio Kurita, H. Tanuma, S. Hirano
This paper presents a new approach to dynamic software tuning called the adaptive algorithm selection method (AASM). The AASM is built into the calling sequence of a library. When the library is called, the AASM is activated. The AASM selects and executes the optimum algorithm from registered algorithms in a library, based on data and machine type. As a result, the software is automatically tuned and the execution time is shortened. The relation between the data and the best algorithm for a given machine is learned by a neural network from the results of performance tests of the registered algorithms. We experimented on a multi-strings search problem with the AASM on the following machines: the CRAY X-MP/216, FACOM M 1800/30, and SUN Sparc Station 2. From these experiments we demonstrated that the AASM is able to minimize the execution time.<>
本文提出了一种新的动态软件调优方法——自适应算法选择法(AASM)。AASM内置于库的调用序列中。当调用库时,AASM被激活。AASM根据数据和机器类型从库中注册的算法中选择并执行最优算法。因此,软件自动调优,缩短了执行时间。神经网络从注册算法的性能测试结果中学习给定机器的数据与最佳算法之间的关系。我们在以下机器上用AASM实验了一个多字符串搜索问题:CRAY X-MP/216、FACOM M 1800/30和SUN Sparc Station 2。通过这些实验,我们证明了AASM能够最大限度地减少执行时间。
{"title":"Adaptive algorithm selection method (AASM) for dynamic software tuning","authors":"K. Suzaki, Takio Kurita, H. Tanuma, S. Hirano","doi":"10.1109/CMPSAC.1993.404185","DOIUrl":"https://doi.org/10.1109/CMPSAC.1993.404185","url":null,"abstract":"This paper presents a new approach to dynamic software tuning called the adaptive algorithm selection method (AASM). The AASM is built into the calling sequence of a library. When the library is called, the AASM is activated. The AASM selects and executes the optimum algorithm from registered algorithms in a library, based on data and machine type. As a result, the software is automatically tuned and the execution time is shortened. The relation between the data and the best algorithm for a given machine is learned by a neural network from the results of performance tests of the registered algorithms. We experimented on a multi-strings search problem with the AASM on the following machines: the CRAY X-MP/216, FACOM M 1800/30, and SUN Sparc Station 2. From these experiments we demonstrated that the AASM is able to minimize the execution time.<<ETX>>","PeriodicalId":375808,"journal":{"name":"Proceedings of 1993 IEEE 17th International Computer Software and Applications Conference COMPSAC '93","volume":"1 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"1993-11-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"125726250","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 : 1993-11-01DOI: 10.1109/CMPSAC.1993.404224
J. Gray, I. Gorton, Innes Ritchie
The problems of constructing parallel programs are considered and the aims of the PARSE parallel software engineering methodology are introduced. PARSE is a multi-stage methodology that covers logical and physical design, design verification, and implementation strategy. The first stage in the methodology involves the use of process graphs which provide a language and architecture independent notation for partitioning the problem into processes and specifying the communication relationships between them. This paper gives an outline of the PARSE methodology and describes the process graph notation. The use of the notation is illustrated with an example of a design for a parallel database system.<>
{"title":"Designing parallel database programs using PARSE","authors":"J. Gray, I. Gorton, Innes Ritchie","doi":"10.1109/CMPSAC.1993.404224","DOIUrl":"https://doi.org/10.1109/CMPSAC.1993.404224","url":null,"abstract":"The problems of constructing parallel programs are considered and the aims of the PARSE parallel software engineering methodology are introduced. PARSE is a multi-stage methodology that covers logical and physical design, design verification, and implementation strategy. The first stage in the methodology involves the use of process graphs which provide a language and architecture independent notation for partitioning the problem into processes and specifying the communication relationships between them. This paper gives an outline of the PARSE methodology and describes the process graph notation. The use of the notation is illustrated with an example of a design for a parallel database system.<<ETX>>","PeriodicalId":375808,"journal":{"name":"Proceedings of 1993 IEEE 17th International Computer Software and Applications Conference COMPSAC '93","volume":"1 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"1993-11-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"128856415","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 : 1993-11-01DOI: 10.1109/CMPSAC.1993.404243
Jianhu Zhu
Many CASE tools use graphical notations to represent program source code, which provide an effective visual aid for program analysis. In such systems, it is important that facilities exist for tracing back to source code from, say, a node in a control-flow graph. We describe a scheme by which source code location information is kept with parse trees. The most attractive feature of this scheme is that it requires minimal amount of storage space and it is very simple to implement, particularly well suited for an implementation where an LALR parser generator (e.g., YACC) is used.<>
{"title":"A practical and space efficient scheme for keeping source location in parse trees","authors":"Jianhu Zhu","doi":"10.1109/CMPSAC.1993.404243","DOIUrl":"https://doi.org/10.1109/CMPSAC.1993.404243","url":null,"abstract":"Many CASE tools use graphical notations to represent program source code, which provide an effective visual aid for program analysis. In such systems, it is important that facilities exist for tracing back to source code from, say, a node in a control-flow graph. We describe a scheme by which source code location information is kept with parse trees. The most attractive feature of this scheme is that it requires minimal amount of storage space and it is very simple to implement, particularly well suited for an implementation where an LALR parser generator (e.g., YACC) is used.<<ETX>>","PeriodicalId":375808,"journal":{"name":"Proceedings of 1993 IEEE 17th International Computer Software and Applications Conference COMPSAC '93","volume":"63 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"1993-11-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"123410166","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 : 1993-11-01DOI: 10.1109/CMPSAC.1993.404227
A. Oberweis, P. Sander, W. Stucky
In this paper a new type of high level Petri nets is introduced for modelling procedures in complex object database applications. Places in these so-called nested relation/transition nets (NR/T-nets) represent schemes of unnormalized (nested) relations. The marking of each place is a nested relation of the respective type. Each transition represents a specific type of operation on the relations in the adjacent places. These operations may not only operate on whole tuples of a given relation but also on sub-tuples of existing tuples. Arcs in a net are inscribed with so-called filter tables which allow to formulate conditions on the specified (sub-) tuples. Each NR/T-net defines a class of possible system procedures.<>
本文介绍了一种用于复杂对象数据库建模的新型高级Petri网。这些所谓的嵌套关系/转换网(NR/ t -网)中的位置表示非规范化(嵌套)关系的方案。每个位置的标记是各自类型的嵌套关系。每个转换表示对相邻位置的关系的特定类型的操作。这些操作不仅可以操作给定关系的整个元组,还可以操作现有元组的子元组。网中的圆弧包含所谓的过滤表,允许在指定的(子)元组上制定条件。每个NR/T-net定义了一类可能的系统过程
{"title":"Petri net based modelling of procedures in complex object database applications","authors":"A. Oberweis, P. Sander, W. Stucky","doi":"10.1109/CMPSAC.1993.404227","DOIUrl":"https://doi.org/10.1109/CMPSAC.1993.404227","url":null,"abstract":"In this paper a new type of high level Petri nets is introduced for modelling procedures in complex object database applications. Places in these so-called nested relation/transition nets (NR/T-nets) represent schemes of unnormalized (nested) relations. The marking of each place is a nested relation of the respective type. Each transition represents a specific type of operation on the relations in the adjacent places. These operations may not only operate on whole tuples of a given relation but also on sub-tuples of existing tuples. Arcs in a net are inscribed with so-called filter tables which allow to formulate conditions on the specified (sub-) tuples. Each NR/T-net defines a class of possible system procedures.<<ETX>>","PeriodicalId":375808,"journal":{"name":"Proceedings of 1993 IEEE 17th International Computer Software and Applications Conference COMPSAC '93","volume":"19 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"1993-11-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"116999067","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}