首页 > 最新文献

Proceedings of the Eighth Israeli Conference on Computer Systems and Software Engineering最新文献

英文 中文
An RPC-based methodology for client/server application development in C++ 基于rpc的c++客户机/服务器应用程序开发方法
Y. Gidron, Lev Kozakov, U. Shani
The remote procedure call (RPC) is a commonly used mechanism for client/server applications. RPC implements a tightly synchronized client/server interaction that is analogous to the well-understood procedure call in regular non-distributed applications. The underlying principle common to all RPC-based tools and standards is that both the client and the server share a common IDL (Interface Definition Language) file. Automatic tools process the IDL file and generate source files that, when compiled with the application, ensure client/server run-time compliancy. We introduce an RPC methodology for C++ client/server applications that follows a different pattern-the sharing of C++ base classes-in place of an IDL file. This releases the developer from the dependence on, and need to learn complex RPC tools and standards. C++ programmers should find this approach sufficient for most of their distributed-application development needs.
远程过程调用(RPC)是客户机/服务器应用程序的常用机制。RPC实现了紧密同步的客户机/服务器交互,类似于常规非分布式应用程序中易于理解的过程调用。所有基于rpc的工具和标准的共同基本原则是客户机和服务器共享一个公共IDL(接口定义语言)文件。自动工具处理IDL文件并生成源文件,当与应用程序一起编译时,这些源文件可确保客户机/服务器运行时遵从性。我们为c++客户机/服务器应用程序引入了一种RPC方法,它遵循一种不同的模式——共享c++基类——来代替IDL文件。这将开发人员从依赖和需要学习复杂的RPC工具和标准中解放出来。c++程序员应该会发现这种方法足以满足大多数分布式应用程序开发需求。
{"title":"An RPC-based methodology for client/server application development in C++","authors":"Y. Gidron, Lev Kozakov, U. Shani","doi":"10.1109/ICCSSE.1997.599874","DOIUrl":"https://doi.org/10.1109/ICCSSE.1997.599874","url":null,"abstract":"The remote procedure call (RPC) is a commonly used mechanism for client/server applications. RPC implements a tightly synchronized client/server interaction that is analogous to the well-understood procedure call in regular non-distributed applications. The underlying principle common to all RPC-based tools and standards is that both the client and the server share a common IDL (Interface Definition Language) file. Automatic tools process the IDL file and generate source files that, when compiled with the application, ensure client/server run-time compliancy. We introduce an RPC methodology for C++ client/server applications that follows a different pattern-the sharing of C++ base classes-in place of an IDL file. This releases the developer from the dependence on, and need to learn complex RPC tools and standards. C++ programmers should find this approach sufficient for most of their distributed-application development needs.","PeriodicalId":430125,"journal":{"name":"Proceedings of the Eighth Israeli Conference on Computer Systems and Software Engineering","volume":"58 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"1997-06-18","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"129492757","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}
引用次数: 2
Prioritized dispersal: a scheme for selective exploitation of redundancy in distributed systems 优先分散:一种在分布式系统中选择性利用冗余的方案
Y. Birk, N. Bloch
In distributed redundant-resource systems such as communication networks with multiple paths between nodes, there is a choice in allocating resources to tasks; this can be used for fault-tolerance, but also in order to improve performance. The allocation, however is complicated by the fact that the system state is not known and changes dynamically. Exploiting redundancy by partitioning a message into several submessages and sending them along with several "redundant" submessages along different paths, as is done by dispersal schemes, increases the load, reduces capacity and even increases delay at permissible heavy loads. We present and analyze novel "prioritized dispersal" schemes, whereby "redundant" submessages receive lower priority than the "original" submessages, and show their performance to substantially exceed that of non-prioritized schemes. This extends the beneficial applicability of selective exploitation of redundancy, whose benefits for centralized systems have been established, to distributed systems.
在分布式冗余资源系统中,如节点间有多条路径的通信网络,在分配资源给任务时存在选择;这可以用于容错,而且为了提高性能。然而,由于系统状态未知且动态变化,分配变得复杂。通过将消息划分为几个子消息并将它们与几个“冗余”子消息一起沿着不同的路径发送来利用冗余,就像分散方案所做的那样,这会增加负载,降低容量,甚至在允许的高负载下增加延迟。我们提出并分析了新的“优先级分散”方案,其中“冗余”子消息的优先级低于“原始”子消息,并显示其性能大大超过非优先级方案。这将选择性利用冗余的有益适用性扩展到分布式系统,它对集中式系统的好处已经得到证实。
{"title":"Prioritized dispersal: a scheme for selective exploitation of redundancy in distributed systems","authors":"Y. Birk, N. Bloch","doi":"10.1109/ICCSSE.1997.599878","DOIUrl":"https://doi.org/10.1109/ICCSSE.1997.599878","url":null,"abstract":"In distributed redundant-resource systems such as communication networks with multiple paths between nodes, there is a choice in allocating resources to tasks; this can be used for fault-tolerance, but also in order to improve performance. The allocation, however is complicated by the fact that the system state is not known and changes dynamically. Exploiting redundancy by partitioning a message into several submessages and sending them along with several \"redundant\" submessages along different paths, as is done by dispersal schemes, increases the load, reduces capacity and even increases delay at permissible heavy loads. We present and analyze novel \"prioritized dispersal\" schemes, whereby \"redundant\" submessages receive lower priority than the \"original\" submessages, and show their performance to substantially exceed that of non-prioritized schemes. This extends the beneficial applicability of selective exploitation of redundancy, whose benefits for centralized systems have been established, to distributed systems.","PeriodicalId":430125,"journal":{"name":"Proceedings of the Eighth Israeli Conference on Computer Systems and Software Engineering","volume":"72 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"1997-06-18","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"124881764","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}
引用次数: 2
Fractal blackboard framework 分形黑板框架
M. Naaman, A. Zaks
A command-and-control application developed at IET has recently undergone a major architectural change to use a blackboard framework. As opposed to many blackboard-based applications, in which the blackboard model is used to model only the top level of the application, we developed a blackboard framework that is fractal-like: the blackboard paradigm serves as the abstraction for all levels, recursively. We have also achieved maximal separation among the different blackboard-based elements at the various levels. This implies having small disconnected components which are flexible and reusable, and which together form the application. In this paper, we present our fractal blackboard framework and discuss interesting issues related to its design and usage.
IET开发的一个命令和控制应用程序最近经历了一个主要的架构更改,使用黑板框架。与许多基于黑板的应用程序相反,在这些应用程序中,黑板模型仅用于对应用程序的顶层建模,我们开发了一个类似分形的黑板框架:黑板范式递归地作为所有级别的抽象。我们还在不同层次的不同黑板元素之间实现了最大的分离。这意味着拥有小型的断开连接的组件,这些组件是灵活的和可重用的,它们一起构成了应用程序。在本文中,我们提出了分形黑板框架,并讨论了与它的设计和使用有关的有趣问题。
{"title":"Fractal blackboard framework","authors":"M. Naaman, A. Zaks","doi":"10.1109/ICCSSE.1997.599872","DOIUrl":"https://doi.org/10.1109/ICCSSE.1997.599872","url":null,"abstract":"A command-and-control application developed at IET has recently undergone a major architectural change to use a blackboard framework. As opposed to many blackboard-based applications, in which the blackboard model is used to model only the top level of the application, we developed a blackboard framework that is fractal-like: the blackboard paradigm serves as the abstraction for all levels, recursively. We have also achieved maximal separation among the different blackboard-based elements at the various levels. This implies having small disconnected components which are flexible and reusable, and which together form the application. In this paper, we present our fractal blackboard framework and discuss interesting issues related to its design and usage.","PeriodicalId":430125,"journal":{"name":"Proceedings of the Eighth Israeli Conference on Computer Systems and Software Engineering","volume":"19 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"1997-06-18","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"128655444","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}
引用次数: 2
Extension mechanisms in Montana 蒙大拿州的延伸机制
D. Soroker, M. Karasick, J. Barton, D. Streeter
Montana is a new C++ programming environment being developed at IBM. Montana aims to improve the software development experience by providing rapid incremental builds, rapid complete builds, and a tightly integrated user interface driven from a single source of information. Montana uses a program representation (CodeStore) to achieve these aims, with compilation proceeding directly from the database. APIs for accessing information about programs from the CodeStore are also made available for tool builders. In this paper we focus on the extension mechanism in Montana, which enables integration of existing tools and creation of new sophisticated, tightly integrated tools.
Montana是IBM正在开发的一个新的c++编程环境。Montana的目标是通过提供快速增量构建、快速完成构建和由单一信息源驱动的紧密集成的用户界面来改善软件开发体验。Montana使用程序表示(CodeStore)来实现这些目标,并直接从数据库进行编译。用于从CodeStore访问有关程序的信息的api也可供工具构建器使用。在本文中,我们将重点放在蒙大拿州的扩展机制上,它可以集成现有工具并创建新的复杂的、紧密集成的工具。
{"title":"Extension mechanisms in Montana","authors":"D. Soroker, M. Karasick, J. Barton, D. Streeter","doi":"10.1109/ICCSSE.1997.599883","DOIUrl":"https://doi.org/10.1109/ICCSSE.1997.599883","url":null,"abstract":"Montana is a new C++ programming environment being developed at IBM. Montana aims to improve the software development experience by providing rapid incremental builds, rapid complete builds, and a tightly integrated user interface driven from a single source of information. Montana uses a program representation (CodeStore) to achieve these aims, with compilation proceeding directly from the database. APIs for accessing information about programs from the CodeStore are also made available for tool builders. In this paper we focus on the extension mechanism in Montana, which enables integration of existing tools and creation of new sophisticated, tightly integrated tools.","PeriodicalId":430125,"journal":{"name":"Proceedings of the Eighth Israeli Conference on Computer Systems and Software Engineering","volume":"32 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"1997-06-18","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"128743185","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}
引用次数: 26
Partial redundancy elimination driven by a cost-benefit analysis 由成本效益分析驱动的部分冗余消除
R. Horspool, H. C. Ho
Partial redundancy elimination has become a major compiler optimization that subsumes various ad hoc code motion optimizations. However, partial redundancy elimination is extremely conservative, failing to take advantage of many opportunities for optimization. We describe a new formulation of partial redundancy elimination based on a cost-benefit analysis of the flowgraph. Costs and benefits are measured by the number of evaluations of an expression. For that reason, our technique requires estimates for the execution frequency of every edge in the flowgraph. The new technique is much more aggressive, performing more code motion and thereby reducing the number of expression evaluations as compared to the standard optimization.
部分冗余消除已经成为一种主要的编译器优化,它包含了各种特殊的代码运动优化。然而,部分冗余消除非常保守,无法利用许多优化机会。基于流程图的成本效益分析,我们描述了一种新的部分冗余消除公式。成本和收益是通过表达式的求值次数来衡量的。出于这个原因,我们的技术需要对流程图中每条边的执行频率进行估计。与标准优化相比,新技术更加激进,执行更多的代码运动,从而减少了表达式求值的次数。
{"title":"Partial redundancy elimination driven by a cost-benefit analysis","authors":"R. Horspool, H. C. Ho","doi":"10.1109/ICCSSE.1997.599882","DOIUrl":"https://doi.org/10.1109/ICCSSE.1997.599882","url":null,"abstract":"Partial redundancy elimination has become a major compiler optimization that subsumes various ad hoc code motion optimizations. However, partial redundancy elimination is extremely conservative, failing to take advantage of many opportunities for optimization. We describe a new formulation of partial redundancy elimination based on a cost-benefit analysis of the flowgraph. Costs and benefits are measured by the number of evaluations of an expression. For that reason, our technique requires estimates for the execution frequency of every edge in the flowgraph. The new technique is much more aggressive, performing more code motion and thereby reducing the number of expression evaluations as compared to the standard optimization.","PeriodicalId":430125,"journal":{"name":"Proceedings of the Eighth Israeli Conference on Computer Systems and Software Engineering","volume":"40 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"1997-06-18","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"121582254","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}
引用次数: 35
Architecting software with interface objects 用接口对象架构软件
A. Ran, Jianli Xu
One of the main concerns of software architects is managing the complexity that is inherent in the development and evolution of large software by minimising and isolating dependencies between different parts into concise descriptions of their interfaces. Possible grouping, ordering or other relations and constraints between the interface elements themselves or with the intended user appear as informal comments or are left unspecified. We have developed a model for structuring and describing interfaces that is suitable for complex software components. In each interaction domain, we use interface objects for hierarchical groupings of interface elements related to the specific function or role played by the component in its interactions with other components. When components are aggregated into composite components, their interface objects may be aggregated in a similar way into composite interface objects. The state of an interface object allows one to specify the conditional availability of its interface elements. Nonuniform visibility of interface elements to different collaborators may be achieved by alternative groupings of interface elements and by selective visibility of interface objects. Interface objects isolate and open a part of the component implementation that is relevant for understanding the interactions of the component, and they thus serve as precise descriptions of its interfaces. An important principle of our approach was to address these problems without introducing new tools or languages, in order to make the approach immediately useful for software engineers working on product development.
软件架构师的主要关注点之一是管理大型软件开发和演变中固有的复杂性,方法是将不同部分之间的依赖关系最小化并隔离为对其接口的简明描述。界面元素本身之间或与预期用户之间可能存在的分组、排序或其他关系和约束以非正式注释的形式出现或未指定。我们已经开发了一个模型,用于构造和描述适合于复杂软件组件的接口。在每个交互领域中,我们使用接口对象对与组件在与其他组件交互中所扮演的特定功能或角色相关的接口元素进行分层分组。当组件聚合为复合组件时,它们的接口对象可以以类似的方式聚合为复合接口对象。接口对象的状态允许指定其接口元素的条件可用性。接口元素对不同合作者的非统一可见性可以通过接口元素的可选分组和接口对象的选择性可见性来实现。接口对象隔离并打开组件实现中与理解组件交互相关的部分,因此它们作为其接口的精确描述。我们的方法的一个重要原则是在不引入新工具或语言的情况下解决这些问题,以便使该方法对从事产品开发的软件工程师立即有用。
{"title":"Architecting software with interface objects","authors":"A. Ran, Jianli Xu","doi":"10.1109/ICCSSE.1997.599873","DOIUrl":"https://doi.org/10.1109/ICCSSE.1997.599873","url":null,"abstract":"One of the main concerns of software architects is managing the complexity that is inherent in the development and evolution of large software by minimising and isolating dependencies between different parts into concise descriptions of their interfaces. Possible grouping, ordering or other relations and constraints between the interface elements themselves or with the intended user appear as informal comments or are left unspecified. We have developed a model for structuring and describing interfaces that is suitable for complex software components. In each interaction domain, we use interface objects for hierarchical groupings of interface elements related to the specific function or role played by the component in its interactions with other components. When components are aggregated into composite components, their interface objects may be aggregated in a similar way into composite interface objects. The state of an interface object allows one to specify the conditional availability of its interface elements. Nonuniform visibility of interface elements to different collaborators may be achieved by alternative groupings of interface elements and by selective visibility of interface objects. Interface objects isolate and open a part of the component implementation that is relevant for understanding the interactions of the component, and they thus serve as precise descriptions of its interfaces. An important principle of our approach was to address these problems without introducing new tools or languages, in order to make the approach immediately useful for software engineers working on product development.","PeriodicalId":430125,"journal":{"name":"Proceedings of the Eighth Israeli Conference on Computer Systems and Software Engineering","volume":"36 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"1997-06-18","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"116974222","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}
引用次数: 14
A quality methodology based on statistical analysis of software structure 一种基于软件结构统计分析的质量方法论
M. Pighin
Presents a methodology to assess software quality, based on the structural parameters of the software, and to validate it by factorial and regression analysis. This methodology is able to predict every file risk level, or, in other words, how likely it is that a file contains faults. The influence of structural parameters on the conditions which characterise a system can vary enormously. Once the environment has been identified and a reasonable amount of data accumulated, it is possible to construct a model which identifies potentially dangerous programs; moreover, this model is dynamic and can be continually recalibrated to suit the environment in question. The conclusions we have reached allow us to assert that both the results obtained by the proposed methodology and the basic assumption upon which the theoretical framework depends have been substantially proven.
提出了一种基于软件结构参数的软件质量评估方法,并通过析因分析和回归分析对其进行验证。这种方法能够预测每个文件的风险级别,或者换句话说,一个文件包含错误的可能性有多大。结构参数对表征系统的条件的影响可以有很大的不同。一旦确定了环境并积累了合理数量的数据,就有可能构建一个识别潜在危险程序的模型;此外,该模型是动态的,可以不断地重新校准以适应所讨论的环境。我们得出的结论使我们能够断言,所提出的方法所获得的结果和理论框架所依赖的基本假设都得到了实质性的证明。
{"title":"A quality methodology based on statistical analysis of software structure","authors":"M. Pighin","doi":"10.1109/ICCSSE.1997.599870","DOIUrl":"https://doi.org/10.1109/ICCSSE.1997.599870","url":null,"abstract":"Presents a methodology to assess software quality, based on the structural parameters of the software, and to validate it by factorial and regression analysis. This methodology is able to predict every file risk level, or, in other words, how likely it is that a file contains faults. The influence of structural parameters on the conditions which characterise a system can vary enormously. Once the environment has been identified and a reasonable amount of data accumulated, it is possible to construct a model which identifies potentially dangerous programs; moreover, this model is dynamic and can be continually recalibrated to suit the environment in question. The conclusions we have reached allow us to assert that both the results obtained by the proposed methodology and the basic assumption upon which the theoretical framework depends have been substantially proven.","PeriodicalId":430125,"journal":{"name":"Proceedings of the Eighth Israeli Conference on Computer Systems and Software Engineering","volume":"85 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"1997-06-18","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"134177688","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}
引用次数: 0
Visual data flow language based on iterative constructs 基于迭代构造的可视化数据流语言
M. Auguston
Iterative control constructs in data flow programming languages have always been a challenging part of language design. We suggest a solution for iterative processing in data flow diagrams based on the notion of a conditional data flow switch, and specialized iterative constructs based on pattern matching for vectors, matrices, and multisets. All of these constructs can be seamlessly incorporated into a dataflow visual programming language. We demonstrate how these constructs may be used to reveal the spatial/temporal dualism of data streams.
数据流编程语言中的迭代控制构造一直是语言设计中一个具有挑战性的部分。我们提出了一种基于条件数据流转换概念的数据流图迭代处理的解决方案,以及基于向量、矩阵和多集的模式匹配的专门迭代构造。所有这些构造都可以无缝地集成到数据流可视化编程语言中。我们将演示如何使用这些结构来揭示数据流的空间/时间二元性。
{"title":"Visual data flow language based on iterative constructs","authors":"M. Auguston","doi":"10.1109/ICCSSE.1997.599880","DOIUrl":"https://doi.org/10.1109/ICCSSE.1997.599880","url":null,"abstract":"Iterative control constructs in data flow programming languages have always been a challenging part of language design. We suggest a solution for iterative processing in data flow diagrams based on the notion of a conditional data flow switch, and specialized iterative constructs based on pattern matching for vectors, matrices, and multisets. All of these constructs can be seamlessly incorporated into a dataflow visual programming language. We demonstrate how these constructs may be used to reveal the spatial/temporal dualism of data streams.","PeriodicalId":430125,"journal":{"name":"Proceedings of the Eighth Israeli Conference on Computer Systems and Software Engineering","volume":"72 12 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"1997-06-18","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"130413380","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}
引用次数: 3
Formal development of static program analysers 静态程序分析器的正式开发
V. Gouranton, D. Le Métayer
We propose an approach for the formal development of static analysers which is based on transformations of inference systems. The specification of an analyser is made of two components: an operational semantics of the programming language and the definition of a property by recurrence on the proof trees of the operational semantics. The derivation is a succession of specialisations of inference systems with respect to properties on their proof trees. In this paper we illustrate the methodology with the derivation of analysers for a non-strict functional language.
我们提出了一种基于推理系统转换的静态分析器形式化开发方法。分析器的规范由两部分组成:编程语言的操作语义和通过在操作语义的证明树上递归定义的性质。推导是推理系统关于其证明树上的性质的一系列专门化。在本文中,我们用非严格函数式语言的分析器的推导来说明这种方法。
{"title":"Formal development of static program analysers","authors":"V. Gouranton, D. Le Métayer","doi":"10.1109/ICCSSE.1997.599881","DOIUrl":"https://doi.org/10.1109/ICCSSE.1997.599881","url":null,"abstract":"We propose an approach for the formal development of static analysers which is based on transformations of inference systems. The specification of an analyser is made of two components: an operational semantics of the programming language and the definition of a property by recurrence on the proof trees of the operational semantics. The derivation is a succession of specialisations of inference systems with respect to properties on their proof trees. In this paper we illustrate the methodology with the derivation of analysers for a non-strict functional language.","PeriodicalId":430125,"journal":{"name":"Proceedings of the Eighth Israeli Conference on Computer Systems and Software Engineering","volume":"16 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"1997-06-18","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"127785909","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}
引用次数: 2
The 'Logic Assurance (LA)' system-a tool for testing and controlling real-time systems “逻辑保证(LA)”系统——用于测试和控制实时系统的工具
O. Shtrichman, R. Goldring
The LA system combines the testing, debugging, monitoring and control of real-time systems. It is capable of improving a system's reliability and development productivity. This is achieved by enabling the developer to describe parts of the specification with logic and temporal logic assertions. The assertions are automatically compared to the actual behavior of the system under development (SUD), and its environment information about the SUD's behavior is represented by informative events and states. This information is transferred to LA from different resources by using special directives inserted inside the code (an approach we call 'informative box'). When an assertion is violated, an informative message is given so that bugs can be detected and focused on. In addition to the message, a user function can be called. This can be used for real-time control and monitoring, either while testing the system or after it has already been launched. The informative box method enables one to perform smart, pin-pointed tests and temporal tests, neither of which can be performed by using standard black-box techniques. This is why LA can assist in the testing and integration of real-time embedded systems, reactive systems, and particularly in the testing of multiprocessor systems running cooperative processes. Considerable time and effort can be saved by using LA throughout the development process. Moreover, it has the capability to detect erroneous situations that otherwise would be more difficult to notice, as was proven when it was used to handle several communication protocol simulations.
该系统集实时系统的测试、调试、监测和控制于一体。它能够提高系统的可靠性和开发效率。这是通过允许开发人员使用逻辑和时态逻辑断言来描述规范的各个部分来实现的。断言会自动与开发中的系统(SUD)的实际行为进行比较,并且有关SUD行为的环境信息由信息事件和状态表示。这些信息通过插入代码中的特殊指令从不同的资源传递给LA(我们称之为“信息框”的方法)。当一个断言被违反时,将给出一条信息消息,以便可以检测和关注错误。除了消息之外,还可以调用用户函数。这可以用于实时控制和监测,无论是在测试系统时还是在系统已经启动后。信息盒方法使人们能够执行智能的、精确的测试和时间测试,这两者都不能通过使用标准的黑盒技术来执行。这就是为什么LA可以帮助测试和集成实时嵌入式系统、响应式系统,特别是测试运行协作进程的多处理器系统。在整个开发过程中使用LA可以节省大量的时间和精力。此外,它还具有检测错误情况的能力,否则很难注意到错误情况,这一点在使用它处理多个通信协议模拟时得到了证明。
{"title":"The 'Logic Assurance (LA)' system-a tool for testing and controlling real-time systems","authors":"O. Shtrichman, R. Goldring","doi":"10.1109/ICCSSE.1997.599875","DOIUrl":"https://doi.org/10.1109/ICCSSE.1997.599875","url":null,"abstract":"The LA system combines the testing, debugging, monitoring and control of real-time systems. It is capable of improving a system's reliability and development productivity. This is achieved by enabling the developer to describe parts of the specification with logic and temporal logic assertions. The assertions are automatically compared to the actual behavior of the system under development (SUD), and its environment information about the SUD's behavior is represented by informative events and states. This information is transferred to LA from different resources by using special directives inserted inside the code (an approach we call 'informative box'). When an assertion is violated, an informative message is given so that bugs can be detected and focused on. In addition to the message, a user function can be called. This can be used for real-time control and monitoring, either while testing the system or after it has already been launched. The informative box method enables one to perform smart, pin-pointed tests and temporal tests, neither of which can be performed by using standard black-box techniques. This is why LA can assist in the testing and integration of real-time embedded systems, reactive systems, and particularly in the testing of multiprocessor systems running cooperative processes. Considerable time and effort can be saved by using LA throughout the development process. Moreover, it has the capability to detect erroneous situations that otherwise would be more difficult to notice, as was proven when it was used to handle several communication protocol simulations.","PeriodicalId":430125,"journal":{"name":"Proceedings of the Eighth Israeli Conference on Computer Systems and Software Engineering","volume":"46 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"1997-06-18","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"117030702","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}
引用次数: 7
期刊
Proceedings of the Eighth Israeli Conference on Computer Systems and Software Engineering
全部 Acc. Chem. Res. ACS Applied Bio Materials ACS Appl. Electron. Mater. ACS Appl. Energy Mater. ACS Appl. Mater. Interfaces ACS Appl. Nano Mater. ACS Appl. Polym. Mater. ACS BIOMATER-SCI ENG ACS Catal. ACS Cent. Sci. ACS Chem. Biol. ACS Chemical Health & Safety ACS Chem. Neurosci. ACS Comb. Sci. ACS Earth Space Chem. ACS Energy Lett. ACS Infect. Dis. ACS Macro Lett. ACS Mater. Lett. ACS Med. Chem. Lett. ACS Nano ACS Omega ACS Photonics ACS Sens. ACS Sustainable Chem. Eng. ACS Synth. Biol. Anal. Chem. BIOCHEMISTRY-US Bioconjugate Chem. BIOMACROMOLECULES Chem. Res. Toxicol. Chem. Rev. Chem. Mater. CRYST GROWTH DES ENERG FUEL Environ. Sci. Technol. Environ. Sci. Technol. Lett. Eur. J. Inorg. Chem. IND ENG CHEM RES Inorg. Chem. J. Agric. Food. Chem. J. Chem. Eng. Data J. Chem. Educ. J. Chem. Inf. Model. J. Chem. Theory Comput. J. Med. Chem. J. Nat. Prod. J PROTEOME RES J. Am. Chem. Soc. LANGMUIR MACROMOLECULES Mol. Pharmaceutics Nano Lett. Org. Lett. ORG PROCESS RES DEV ORGANOMETALLICS J. Org. Chem. J. Phys. Chem. J. Phys. Chem. A J. Phys. Chem. B J. Phys. Chem. C J. Phys. Chem. Lett. Analyst Anal. Methods Biomater. Sci. Catal. Sci. Technol. Chem. Commun. Chem. Soc. Rev. CHEM EDUC RES PRACT CRYSTENGCOMM Dalton Trans. Energy Environ. Sci. ENVIRON SCI-NANO ENVIRON SCI-PROC IMP ENVIRON SCI-WAT RES Faraday Discuss. Food Funct. Green Chem. Inorg. Chem. Front. Integr. Biol. J. Anal. At. Spectrom. J. Mater. Chem. A J. Mater. Chem. B J. Mater. Chem. C Lab Chip Mater. Chem. Front. Mater. Horiz. MEDCHEMCOMM Metallomics Mol. Biosyst. Mol. Syst. Des. Eng. Nanoscale Nanoscale Horiz. Nat. Prod. Rep. New J. Chem. Org. Biomol. Chem. Org. Chem. Front. PHOTOCH PHOTOBIO SCI PCCP Polym. Chem.
×
引用
GB/T 7714-2015
复制
MLA
复制
APA
复制
导出至
BibTeX EndNote RefMan NoteFirst NoteExpress
×
0
微信
客服QQ
Book学术公众号 扫码关注我们
反馈
×
意见反馈
请填写您的意见或建议
请填写您的手机或邮箱
×
提示
您的信息不完整,为了账户安全,请先补充。
现在去补充
×
提示
您因"违规操作"
具体请查看互助需知
我知道了
×
提示
现在去查看 取消
×
提示
确定
Book学术官方微信
Book学术文献互助
Book学术文献互助群
群 号:604180095
Book学术
文献互助 智能选刊 最新文献 互助须知 联系我们:info@booksci.cn
Book学术提供免费学术资源搜索服务,方便国内外学者检索中英文文献。致力于提供最便捷和优质的服务体验。
Copyright © 2023 Book学术 All rights reserved.
ghs 京公网安备 11010802042870号 京ICP备2023020795号-1