Pub Date : 1993-11-01DOI: 10.1109/CMPSAC.1993.404215
T. Arano, Carl K. Chang, P. Mongkolwat, Yong Liu, Xin Shu
This paper proposes a new prototyping approach to software development to produce better-quality software more productively than traditional prototyping methodologies by combining formal methods and object-oriented techniques with prototyping concepts. In the prototyping process, specifications are gradually replaced with implementations which may be retrieved from libraries and refined afterwards. The executable specification language provides not only behavior/performance analysis but also simulation capabilities which are essential to prototyping. Additionally, a special mechanism called hybrid simulation takes it possible to simulate a mixture of specification and implementation, and serves to validate the intended system. Software reuse by object-orientation is one basis of the methodology, and eliminates the risk of producing a quick-and-dirty product, which is a typical prototyping problem. The seamlessness of object-orientation is indispensable to the methodology.<>
{"title":"An object-oriented prototyping approach to system development","authors":"T. Arano, Carl K. Chang, P. Mongkolwat, Yong Liu, Xin Shu","doi":"10.1109/CMPSAC.1993.404215","DOIUrl":"https://doi.org/10.1109/CMPSAC.1993.404215","url":null,"abstract":"This paper proposes a new prototyping approach to software development to produce better-quality software more productively than traditional prototyping methodologies by combining formal methods and object-oriented techniques with prototyping concepts. In the prototyping process, specifications are gradually replaced with implementations which may be retrieved from libraries and refined afterwards. The executable specification language provides not only behavior/performance analysis but also simulation capabilities which are essential to prototyping. Additionally, a special mechanism called hybrid simulation takes it possible to simulate a mixture of specification and implementation, and serves to validate the intended system. Software reuse by object-orientation is one basis of the methodology, and eliminates the risk of producing a quick-and-dirty product, which is a typical prototyping problem. The seamlessness of object-orientation is indispensable to the methodology.<<ETX>>","PeriodicalId":375808,"journal":{"name":"Proceedings of 1993 IEEE 17th International Computer Software and Applications Conference COMPSAC '93","volume":"42 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":"121610571","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.404237
K. B. Zerangue
Theoretical approaches to various subdisciplines within software engineering have helped to make the practical application of software engineering more effective. This paper poses the question of whether a general theory of software engineering can and should be sought. The challenge is to assist practicing software engineers by investigating the theoretical bases of discipline. The panelists use their experience and expertise to address areas within software engineering which can benefit from theoretical approaches.<>
{"title":"On developing a general theory of software engineering","authors":"K. B. Zerangue","doi":"10.1109/CMPSAC.1993.404237","DOIUrl":"https://doi.org/10.1109/CMPSAC.1993.404237","url":null,"abstract":"Theoretical approaches to various subdisciplines within software engineering have helped to make the practical application of software engineering more effective. This paper poses the question of whether a general theory of software engineering can and should be sought. The challenge is to assist practicing software engineers by investigating the theoretical bases of discipline. The panelists use their experience and expertise to address areas within software engineering which can benefit from theoretical approaches.<<ETX>>","PeriodicalId":375808,"journal":{"name":"Proceedings of 1993 IEEE 17th International Computer Software and Applications Conference COMPSAC '93","volume":"52 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":"126489977","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.404232
Janche Sang, F. Knop, V. Rego, Jenq-Kuen Lee, C. King
The purpose of the Xthreads library is to provide a cheap concurrent programming environment. The design of the Xthreads library is patterned after Xinu, a small and elegant operating system in which all processes share a single address space and hence enjoy reduced overheads in process creation, interprocess communication, and so on. Our approach is to map the Xinu process structure into the Xthreads thread structure in a Unix-like process. Easy extensions and modifications to the Xthreads library are a major objective, accomplished through modularity and layering. We ported Xthreads to the nCUBE2, iPSC860 and RS6000 computers. This paper describes the library, our experiences with its design and implementation, the early performance measurements, and its applicability to simulation modeling.<>
{"title":"The Xthreads library: Design, implementation, and applications","authors":"Janche Sang, F. Knop, V. Rego, Jenq-Kuen Lee, C. King","doi":"10.1109/CMPSAC.1993.404232","DOIUrl":"https://doi.org/10.1109/CMPSAC.1993.404232","url":null,"abstract":"The purpose of the Xthreads library is to provide a cheap concurrent programming environment. The design of the Xthreads library is patterned after Xinu, a small and elegant operating system in which all processes share a single address space and hence enjoy reduced overheads in process creation, interprocess communication, and so on. Our approach is to map the Xinu process structure into the Xthreads thread structure in a Unix-like process. Easy extensions and modifications to the Xthreads library are a major objective, accomplished through modularity and layering. We ported Xthreads to the nCUBE2, iPSC860 and RS6000 computers. This paper describes the library, our experiences with its design and implementation, the early performance measurements, and its applicability to simulation modeling.<<ETX>>","PeriodicalId":375808,"journal":{"name":"Proceedings of 1993 IEEE 17th International Computer Software and Applications Conference COMPSAC '93","volume":"10 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":"125651324","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.404245
David F. Robinson, B. Cheng
A major obstacle to parallel software development has been the perturbation of program execution resulting from software-based monitoring techniques. Parallel programs exhibit non-deterministic behavior, which can result in changes in program execution under software monitoring, as compared to unmonitored program execution. In this paper, a formal model for parallel program execution and monitoring in shared-memory environments is developed that addresses issues related to monitor intrusion. Using this formal model, the notion of transparency, as it relates to monitored programs, is defined. Sufficient conditions for monitor transparency are presented. Software-based monitoring tools meeting these conditions are assured to exhibit transparency, given the definition. Thus, by ensuring that parallel program monitors conform to these sufficient conditions for monitor transparency, developers of software tools can enable transparent monitoring to be achieved.<>
{"title":"A temporal model for transparent monitoring of shared-memory multiprocessors","authors":"David F. Robinson, B. Cheng","doi":"10.1109/CMPSAC.1993.404245","DOIUrl":"https://doi.org/10.1109/CMPSAC.1993.404245","url":null,"abstract":"A major obstacle to parallel software development has been the perturbation of program execution resulting from software-based monitoring techniques. Parallel programs exhibit non-deterministic behavior, which can result in changes in program execution under software monitoring, as compared to unmonitored program execution. In this paper, a formal model for parallel program execution and monitoring in shared-memory environments is developed that addresses issues related to monitor intrusion. Using this formal model, the notion of transparency, as it relates to monitored programs, is defined. Sufficient conditions for monitor transparency are presented. Software-based monitoring tools meeting these conditions are assured to exhibit transparency, given the definition. Thus, by ensuring that parallel program monitors conform to these sufficient conditions for monitor transparency, developers of software tools can enable transparent monitoring to be achieved.<<ETX>>","PeriodicalId":375808,"journal":{"name":"Proceedings of 1993 IEEE 17th International Computer Software and Applications Conference COMPSAC '93","volume":"319 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":"133384266","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.404225
I. Gorton, Innes Ritchie, J. Gray
The aims of the PARSE methodology are described, and the process graph design notation is summarised. Process graphs are a new graphical notation for describing systems comprising a collection of parallel processes in a language- and architecture-independent fashion. Further, process graph designs can be mechanically transformed into Petri nets to give a more detailed, executable design specification. Some simple process graphs and their corresponding Petri nets are described in order to demonstrate this transformation process. A more extensive example then illustrates the initial stages of the design process in practice.<>
{"title":"Parallel software engineering with PARSE","authors":"I. Gorton, Innes Ritchie, J. Gray","doi":"10.1109/CMPSAC.1993.404225","DOIUrl":"https://doi.org/10.1109/CMPSAC.1993.404225","url":null,"abstract":"The aims of the PARSE methodology are described, and the process graph design notation is summarised. Process graphs are a new graphical notation for describing systems comprising a collection of parallel processes in a language- and architecture-independent fashion. Further, process graph designs can be mechanically transformed into Petri nets to give a more detailed, executable design specification. Some simple process graphs and their corresponding Petri nets are described in order to demonstrate this transformation process. A more extensive example then illustrates the initial stages of the design process in practice.<<ETX>>","PeriodicalId":375808,"journal":{"name":"Proceedings of 1993 IEEE 17th International Computer Software and Applications Conference COMPSAC '93","volume":"14 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":"123648752","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.404194
Ji Wang, Huowang Chen
A technique to analyze the temporal properties of real-time systems is presented in this paper. In our framework, the behavior of the system under development, which is modeled in an extension of Statecharts called Statecharts+, is captured by the underlying computational model, Timed Automata. On the basis of the operational semantics defined for arbitrary time domains, we present a formal translation technique to compile the real-time system specification into Timed Automata. Therefore, model checking of real-time properties can be applied to the automatic analysis of real-time systems.<>
{"title":"A formal technique to analyze real-time systems","authors":"Ji Wang, Huowang Chen","doi":"10.1109/CMPSAC.1993.404194","DOIUrl":"https://doi.org/10.1109/CMPSAC.1993.404194","url":null,"abstract":"A technique to analyze the temporal properties of real-time systems is presented in this paper. In our framework, the behavior of the system under development, which is modeled in an extension of Statecharts called Statecharts+, is captured by the underlying computational model, Timed Automata. On the basis of the operational semantics defined for arbitrary time domains, we present a formal translation technique to compile the real-time system specification into Timed Automata. Therefore, model checking of real-time properties can be applied to the automatic analysis of real-time systems.<<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":"125280725","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.404211
Masaki Hamada, H. Adachi
This paper proposes a method of supporting software change propagation analysis using a recorded software design rationale. This paper discusses recording costs, the usage and effectiveness of the recorded information for change propagation analysis, which other papers don't. Change propagation analysis of the software being modified is difficult when no design rationale for the software is left. In the proposed method, the designer makes a design process record that includes his/her design rationale. The method enables a maintainer to search for the recorded information that is essential to change propagation analysis. The cost of recording the design process is small because the designer just writes down fragmentary design results. From the experience of using a prototype system, the effectiveness of the proposed method is discussed.<>
{"title":"Recording software design processes for maintaining the software","authors":"Masaki Hamada, H. Adachi","doi":"10.1109/CMPSAC.1993.404211","DOIUrl":"https://doi.org/10.1109/CMPSAC.1993.404211","url":null,"abstract":"This paper proposes a method of supporting software change propagation analysis using a recorded software design rationale. This paper discusses recording costs, the usage and effectiveness of the recorded information for change propagation analysis, which other papers don't. Change propagation analysis of the software being modified is difficult when no design rationale for the software is left. In the proposed method, the designer makes a design process record that includes his/her design rationale. The method enables a maintainer to search for the recorded information that is essential to change propagation analysis. The cost of recording the design process is small because the designer just writes down fragmentary design results. From the experience of using a prototype system, the effectiveness of the proposed method is discussed.<<ETX>>","PeriodicalId":375808,"journal":{"name":"Proceedings of 1993 IEEE 17th International Computer Software and Applications Conference COMPSAC '93","volume":"32 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":"125264915","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.404246
J. Tian, Peng Lu
This paper introduces an integrated environment for software reliability modeling. The environment consists of three major components: (1) a software reliability modeling tool SMERFS adapted to fit our development environment; (2) a general data analysis environment in S-PLUS customized for software reliability modeling; and (3) some supporting programs written in C and AWK. This environment has been successfully used in the IBM Programming Systems Toronto Lab.<>
{"title":"An integrated environment for software reliability modeling","authors":"J. Tian, Peng Lu","doi":"10.1109/CMPSAC.1993.404246","DOIUrl":"https://doi.org/10.1109/CMPSAC.1993.404246","url":null,"abstract":"This paper introduces an integrated environment for software reliability modeling. The environment consists of three major components: (1) a software reliability modeling tool SMERFS adapted to fit our development environment; (2) a general data analysis environment in S-PLUS customized for software reliability modeling; and (3) some supporting programs written in C and AWK. This environment has been successfully used in the IBM Programming Systems Toronto Lab.<<ETX>>","PeriodicalId":375808,"journal":{"name":"Proceedings of 1993 IEEE 17th International Computer Software and Applications Conference COMPSAC '93","volume":"14 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":"121227643","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.404187
Jingde Cheng
In addition to the usual control and data dependences proposed and studied for sequential and centralized programs, this paper introduces three new types of primary program dependences in concurrent and distributed programs, named the selection dependence, synchronization dependence, and communication dependence, and a new program representation for concurrent and distributed programs, named the process dependence net (PDN), which is an arc-classified digraph to explicitly represent the five types of primary program dependences in the programs. The paper also shows some applications of the representation.<>
{"title":"Process dependence net of distributed programs and its applications in development of distributed systems","authors":"Jingde Cheng","doi":"10.1109/CMPSAC.1993.404187","DOIUrl":"https://doi.org/10.1109/CMPSAC.1993.404187","url":null,"abstract":"In addition to the usual control and data dependences proposed and studied for sequential and centralized programs, this paper introduces three new types of primary program dependences in concurrent and distributed programs, named the selection dependence, synchronization dependence, and communication dependence, and a new program representation for concurrent and distributed programs, named the process dependence net (PDN), which is an arc-classified digraph to explicitly represent the five types of primary program dependences in the programs. The paper also shows some applications of the representation.<<ETX>>","PeriodicalId":375808,"journal":{"name":"Proceedings of 1993 IEEE 17th International Computer Software and Applications Conference COMPSAC '93","volume":"46 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":"115034290","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.404229
B. Thuraisingham, H. Rubinovitz, David Foti, Andres Abreu
We describe an approach for controlling certain unauthorized inferences in a multilevel secure distributed database management system. In such a system, two or more multilevel secure database management systems are connected via a trusted network. Furthermore, the environment that we have considered is a limited heterogeneous one where not all of the nodes handle the same accreditation ranges. In our approach, security constraints, which are rules that assign security levels to the data, are processed during the distributed query, update, and database design operations in such a way that users do not acquire information to which they are not authorized via logical deductions. We describe the design and implementation of the distributed inference controller which functions during the query operation.<>
{"title":"Design and implementation of a distributed database","authors":"B. Thuraisingham, H. Rubinovitz, David Foti, Andres Abreu","doi":"10.1109/CMPSAC.1993.404229","DOIUrl":"https://doi.org/10.1109/CMPSAC.1993.404229","url":null,"abstract":"We describe an approach for controlling certain unauthorized inferences in a multilevel secure distributed database management system. In such a system, two or more multilevel secure database management systems are connected via a trusted network. Furthermore, the environment that we have considered is a limited heterogeneous one where not all of the nodes handle the same accreditation ranges. In our approach, security constraints, which are rules that assign security levels to the data, are processed during the distributed query, update, and database design operations in such a way that users do not acquire information to which they are not authorized via logical deductions. We describe the design and implementation of the distributed inference controller which functions during the query operation.<<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":"125998159","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}