Pub Date : 1993-11-01DOI: 10.1109/CMPSAC.1993.404236
I. Morrey, J. Siddiqi, G. Buckberry, R. Hibberd
ZAL (Z Animation in LISP) is a package which allows a Z specification to be incrementally designed and validated in an interactive environment built on Common LISP. A Z specification is transformed into an equivalent ZAL program which can be executed in order to demonstrate the functionality of the intended implementation. ZED is a full screen editor and syntax analyser for Z. Using these two tools as an integrated package encourages and facilitates an exploratory approach to formal specification which reflects the way in which many users of Z (particularly beginners) prefer to approach the specification task. The package has also been used to support the teaching of students following courses in discrete mathematics, formal specification and software development.<>
ZAL (LISP中的Z动画)是一个包,它允许在基于Common LISP构建的交互式环境中增量地设计和验证Z规范。Z规范被转换为等价的ZAL程序,可以执行该程序以演示预期实现的功能。ZED是Z的全屏编辑器和语法分析器。使用这两个工具作为一个集成的包鼓励并促进了对正式规范的探索方法,这反映了许多Z用户(特别是初学者)更喜欢处理规范任务的方式。该软件包还被用于支持学生在离散数学,正式规范和软件开发课程的教学。
{"title":"Use of a specification construction and animation tool to teach formal methods","authors":"I. Morrey, J. Siddiqi, G. Buckberry, R. Hibberd","doi":"10.1109/CMPSAC.1993.404236","DOIUrl":"https://doi.org/10.1109/CMPSAC.1993.404236","url":null,"abstract":"ZAL (Z Animation in LISP) is a package which allows a Z specification to be incrementally designed and validated in an interactive environment built on Common LISP. A Z specification is transformed into an equivalent ZAL program which can be executed in order to demonstrate the functionality of the intended implementation. ZED is a full screen editor and syntax analyser for Z. Using these two tools as an integrated package encourages and facilitates an exploratory approach to formal specification which reflects the way in which many users of Z (particularly beginners) prefer to approach the specification task. The package has also been used to support the teaching of students following courses in discrete mathematics, formal specification and software development.<<ETX>>","PeriodicalId":375808,"journal":{"name":"Proceedings of 1993 IEEE 17th International Computer Software and Applications Conference COMPSAC '93","volume":"129 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":"114309544","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.404239
Akira Fukuda, R. Fujiki, H. Kai
Non-uniform memory access multiprocessors have potential gains for achieving high performance. These machines are frequently used as computation servers with multiple parallel processes (we use this word instead of jobs) executing at the same time. In such environments, the efficiency of a parallel process can be significantly affected by the processor scheduling strategy. LA two-level scheduling strategy, which is a kind of space-multiplexing scheduling strategy, is a promising one for large-scale multiprocessors. This paper describes the structure and interface of the two-level scheduling strategy. We also propose basic alternatives in this strategy: as alternatives of handling free processors, (1) running-process-first scheme and (2) waiting-process-first scheme; as alternatives of handling idle processors, (1) idle-processor-hold scheme and (2) idle-processor-release scheme. These alternatives are examined through simulation experiments.<>
{"title":"Two-level processor scheduling for multiprogrammed NUMA multiprocessors","authors":"Akira Fukuda, R. Fujiki, H. Kai","doi":"10.1109/CMPSAC.1993.404239","DOIUrl":"https://doi.org/10.1109/CMPSAC.1993.404239","url":null,"abstract":"Non-uniform memory access multiprocessors have potential gains for achieving high performance. These machines are frequently used as computation servers with multiple parallel processes (we use this word instead of jobs) executing at the same time. In such environments, the efficiency of a parallel process can be significantly affected by the processor scheduling strategy. LA two-level scheduling strategy, which is a kind of space-multiplexing scheduling strategy, is a promising one for large-scale multiprocessors. This paper describes the structure and interface of the two-level scheduling strategy. We also propose basic alternatives in this strategy: as alternatives of handling free processors, (1) running-process-first scheme and (2) waiting-process-first scheme; as alternatives of handling idle processors, (1) idle-processor-hold scheme and (2) idle-processor-release scheme. These alternatives are examined through simulation experiments.<<ETX>>","PeriodicalId":375808,"journal":{"name":"Proceedings of 1993 IEEE 17th International Computer Software and Applications Conference COMPSAC '93","volume":"26 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":"127791544","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.404189
C. Y. R. Chen, K. Nwosu, P. Berra
The improvements in disk speeds have not kept up with improvements in processor and memory speeds. Conventional storage techniques, in the face of multimedia data, are inefficient and/or inadequate. Here, an efficient multimedia object allocation strategy is presented. We describe a multimedia object model, the object and storage device characteristics, and the fragmentation strategy. A bipartite graph approach is used for mapping fragments to storage devices and a cost function is used to determine an efficient allocation of an object and to balance the loads on the devices.<>
{"title":"Multimedia object modelling and storage allocation strategies for heterogeneous parallel access storage devices in real time multimedia computing systems","authors":"C. Y. R. Chen, K. Nwosu, P. Berra","doi":"10.1109/CMPSAC.1993.404189","DOIUrl":"https://doi.org/10.1109/CMPSAC.1993.404189","url":null,"abstract":"The improvements in disk speeds have not kept up with improvements in processor and memory speeds. Conventional storage techniques, in the face of multimedia data, are inefficient and/or inadequate. Here, an efficient multimedia object allocation strategy is presented. We describe a multimedia object model, the object and storage device characteristics, and the fragmentation strategy. A bipartite graph approach is used for mapping fragments to storage devices and a cost function is used to determine an efficient allocation of an object and to balance the loads on the devices.<<ETX>>","PeriodicalId":375808,"journal":{"name":"Proceedings of 1993 IEEE 17th International Computer Software and Applications Conference COMPSAC '93","volume":"45 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":"133896744","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.404221
S. Jarzabek
Programs are often reengineered for better maintainability or in order to migrate programs into newer computer/software platforms. However, many of the aging business systems must be also upgraded in order to meet strategic goals of an organization. To meet such ambitious objectives, we must fundamentally redesign programs, rather than merely restructure them for improved maintainability. When much program re-design is involved, the reengineering option becomes challenging at the technical level, expensive and risky. To increase the value of the reengineering solution, we address reusability issues in the context of reengineering. In this paper, we discuss lifecycle phases and outline a possible technical scenario for reengineering for reusability.<>
{"title":"Software reengineering for reusability","authors":"S. Jarzabek","doi":"10.1109/CMPSAC.1993.404221","DOIUrl":"https://doi.org/10.1109/CMPSAC.1993.404221","url":null,"abstract":"Programs are often reengineered for better maintainability or in order to migrate programs into newer computer/software platforms. However, many of the aging business systems must be also upgraded in order to meet strategic goals of an organization. To meet such ambitious objectives, we must fundamentally redesign programs, rather than merely restructure them for improved maintainability. When much program re-design is involved, the reengineering option becomes challenging at the technical level, expensive and risky. To increase the value of the reengineering solution, we address reusability issues in the context of reengineering. In this paper, we discuss lifecycle phases and outline a possible technical scenario for reengineering for reusability.<<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":"133486328","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.404220
J. Poulin, K. P. Yglesias
This paper presents experiences with software classification in a large corporate reuse software library (RSL) at IBM. We use facets extensively as one method of component classification in the IBM RSL. However, facets alone cannot adequately provide all the information needed to fully classify and understand a reusable component. Experience with an operational RSL reveals that we require a combination of classification techniques to meet the needs of software developers. Following an overview of the IBM classification method, we discuss the issues surrounding the use of facets and software classification in a large reuse system and give techniques used at IBM to address those issues.<>
{"title":"Experiences with a faceted classification scheme in a large reusable software library (RSL)","authors":"J. Poulin, K. P. Yglesias","doi":"10.1109/CMPSAC.1993.404220","DOIUrl":"https://doi.org/10.1109/CMPSAC.1993.404220","url":null,"abstract":"This paper presents experiences with software classification in a large corporate reuse software library (RSL) at IBM. We use facets extensively as one method of component classification in the IBM RSL. However, facets alone cannot adequately provide all the information needed to fully classify and understand a reusable component. Experience with an operational RSL reveals that we require a combination of classification techniques to meet the needs of software developers. Following an overview of the IBM classification method, we discuss the issues surrounding the use of facets and software classification in a large reuse system and give techniques used at IBM to address those issues.<<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":"114428901","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.404214
A. Parrish, D. Cordes, R. Borie
Abstract data types (ADTs) represent the fundamental building blocks of object-oriented software development. Consequently, a number of different testing techniques for ADT modules have been proposed in the literature. Most of these techniques at least tacitly assume that the ADT module under test has been completely implemented. In this paper, we present a class of testing techniques that are easily applicable to partially completed ADT modules, thus supporting an incremental approach to ADT module development. We then present a testing tool that automatically generates test cases for partially completed ADTs with very little overhead. As such, our testing techniques may be repeatedly applied, with relatively little expense, to generate new test cases as the ADT module increases in size.<>
{"title":"Developmental testing of abstract data types","authors":"A. Parrish, D. Cordes, R. Borie","doi":"10.1109/CMPSAC.1993.404214","DOIUrl":"https://doi.org/10.1109/CMPSAC.1993.404214","url":null,"abstract":"Abstract data types (ADTs) represent the fundamental building blocks of object-oriented software development. Consequently, a number of different testing techniques for ADT modules have been proposed in the literature. Most of these techniques at least tacitly assume that the ADT module under test has been completely implemented. In this paper, we present a class of testing techniques that are easily applicable to partially completed ADT modules, thus supporting an incremental approach to ADT module development. We then present a testing tool that automatically generates test cases for partially completed ADTs with very little overhead. As such, our testing techniques may be repeatedly applied, with relatively little expense, to generate new test cases as the ADT module increases in size.<<ETX>>","PeriodicalId":375808,"journal":{"name":"Proceedings of 1993 IEEE 17th International Computer Software and Applications Conference COMPSAC '93","volume":"15 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":"122455325","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.404193
Javed I. Khan, I. Miyamoto
Technically, because of the limited dimensions of the presentation media, and psychologically, because of the limited human attention span, graphical program visualization in computer assisted reverse engineering becomes increasingly difficult with scale. This problem becomes compounded when multi-perspective visualization is taken into consideration. In this research we present a system called HVIEW, which attempts to overcome the problem of scale by logical decomposition. HVIEW can present a graphical visual of a computer program at various abstraction levels from diverse perspectives as interactively requested by the user. HVIEW logically formulates abstract function and data objects to construct compressed immediate program representations and organizes them into independent data and function hierarchies. Whereas, these hierarchies provide the mechanism of flexible abstraction, a user specifiable query filter creates an assortment of perspectives on the rendered visual of the modelled code.<>
{"title":"Integrating abstraction flexibility with diverse program perspectives","authors":"Javed I. Khan, I. Miyamoto","doi":"10.1109/CMPSAC.1993.404193","DOIUrl":"https://doi.org/10.1109/CMPSAC.1993.404193","url":null,"abstract":"Technically, because of the limited dimensions of the presentation media, and psychologically, because of the limited human attention span, graphical program visualization in computer assisted reverse engineering becomes increasingly difficult with scale. This problem becomes compounded when multi-perspective visualization is taken into consideration. In this research we present a system called HVIEW, which attempts to overcome the problem of scale by logical decomposition. HVIEW can present a graphical visual of a computer program at various abstraction levels from diverse perspectives as interactively requested by the user. HVIEW logically formulates abstract function and data objects to construct compressed immediate program representations and organizes them into independent data and function hierarchies. Whereas, these hierarchies provide the mechanism of flexible abstraction, a user specifiable query filter creates an assortment of perspectives on the rendered visual of the modelled code.<<ETX>>","PeriodicalId":375808,"journal":{"name":"Proceedings of 1993 IEEE 17th International Computer Software and Applications Conference COMPSAC '93","volume":"56 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":"114904301","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 : 1991-09-30DOI: 10.1109/CMPSAC.1993.404186
Vijay Kumar, Judy Mullins
An integrated data structure is presented in this paper which offers multiple access paths for processing different types of queries efficiently. Our approach is to fuse those data structures which offer efficient access path of a particular type. To show the feasibility of our scheme we fused the B/sup +/-tree, the grid file and extendible hashing, using a proper interface. We implemented and measured its performance through simulation modeling. Our results show that the integrated data structure does improve concurrency and offers a higher throughput for a variety of transaction processing workloads. We argue that our scheme is different than creating secondary indexes for improving concurrency.<>
{"title":"An integrated data structure with multiple access paths for database and its performance","authors":"Vijay Kumar, Judy Mullins","doi":"10.1109/CMPSAC.1993.404186","DOIUrl":"https://doi.org/10.1109/CMPSAC.1993.404186","url":null,"abstract":"An integrated data structure is presented in this paper which offers multiple access paths for processing different types of queries efficiently. Our approach is to fuse those data structures which offer efficient access path of a particular type. To show the feasibility of our scheme we fused the B/sup +/-tree, the grid file and extendible hashing, using a proper interface. We implemented and measured its performance through simulation modeling. Our results show that the integrated data structure does improve concurrency and offers a higher throughput for a variety of transaction processing workloads. We argue that our scheme is different than creating secondary indexes for improving concurrency.<<ETX>>","PeriodicalId":375808,"journal":{"name":"Proceedings of 1993 IEEE 17th International Computer Software and Applications Conference COMPSAC '93","volume":"193 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"1991-09-30","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"115637067","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}