首页 > 最新文献

Proceedings of the 24th International Conference on Software Engineering. ICSE 2002最新文献

英文 中文
Fuzzy logic based interactive recovery of software design 基于模糊逻辑的交互式恢复软件设计
Jörg Niere
This paper presents an approach to semi-automatically detect pattern instances and their implementations in a software system. Design patterns are currently best practice in software development; they provide solutions for nearly all granularities of software design, and this makes them suitable for representing design knowledge. The proposed approach overcomes a number of scalability problems as they exist in other approaches by using fuzzy logic, user interaction and a learning component.
本文提出了一种半自动检测模式实例的方法及其在软件系统中的实现。设计模式是当前软件开发中的最佳实践;它们几乎为软件设计的所有粒度提供了解决方案,这使得它们适合表示设计知识。该方法通过使用模糊逻辑、用户交互和学习组件,克服了其他方法中存在的许多可扩展性问题。
{"title":"Fuzzy logic based interactive recovery of software design","authors":"Jörg Niere","doi":"10.1145/581339.581473","DOIUrl":"https://doi.org/10.1145/581339.581473","url":null,"abstract":"This paper presents an approach to semi-automatically detect pattern instances and their implementations in a software system. Design patterns are currently best practice in software development; they provide solutions for nearly all granularities of software design, and this makes them suitable for representing design knowledge. The proposed approach overcomes a number of scalability problems as they exist in other approaches by using fuzzy logic, user interaction and a learning component.","PeriodicalId":186061,"journal":{"name":"Proceedings of the 24th International Conference on Software Engineering. ICSE 2002","volume":"37 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2002-05-19","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"121774043","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}
引用次数: 18
Observing timed systems by means of Message Sequence Chart Graphs 用消息序列图观察定时系统
S. Blaustein, F. Oliveto, V. Braberman
Summary form only given. Tools that feature MSC do not have the ability to check model or implementation executions against the specified behavior. We present a method for observing the behavior of timed systems specified using Message Sequence Chart Graphs (MSC-Graphs) (a simplified version of ITU Z.120 notation). We believe that a log-analyzer and a run-time monitor based on MSC-Graphs are practical and powerful tools to improve the quality of real-time systems. On one hand, the log analyzer can play the role of an Oracle while testing non-functional requirements. On the other hand, the run-time monitor can help in the verification of protocol assertions given in terms of message interchange annotated with time constraints. The work is built over a formal definition of the syntax and semantics of MSC-Graphs, which is similar to (Alur and Yannakakis, 1999) (i.e. based on partial orders). Those MSC-Graphs are enriched with timers and delay intervals in a similar way to (Ben-Abdallah and Leue, 1997) and (Li and Lilius, 1999).
只提供摘要形式。具有MSC特性的工具不能根据指定的行为检查模型或实现的执行情况。我们提出了一种观察使用消息序列图(MSC-Graphs) (ITU Z.120表示法的简化版本)指定的定时系统行为的方法。我们相信基于MSC-Graphs的日志分析器和运行时监视器是提高实时系统质量的实用而强大的工具。一方面,日志分析器可以在测试非功能需求时扮演Oracle的角色。另一方面,运行时监视器可以帮助验证根据带有时间约束注释的消息交换给出的协议断言。这项工作是建立在MSC-Graphs的语法和语义的正式定义之上的,类似于(Alur和Yannakakis, 1999)(即基于偏序)。这些msc - graph以类似于(Ben-Abdallah and Leue, 1997)和(Li and Lilius, 1999)的方式丰富了计时器和延迟间隔。
{"title":"Observing timed systems by means of Message Sequence Chart Graphs","authors":"S. Blaustein, F. Oliveto, V. Braberman","doi":"10.1145/581457.581458","DOIUrl":"https://doi.org/10.1145/581457.581458","url":null,"abstract":"Summary form only given. Tools that feature MSC do not have the ability to check model or implementation executions against the specified behavior. We present a method for observing the behavior of timed systems specified using Message Sequence Chart Graphs (MSC-Graphs) (a simplified version of ITU Z.120 notation). We believe that a log-analyzer and a run-time monitor based on MSC-Graphs are practical and powerful tools to improve the quality of real-time systems. On one hand, the log analyzer can play the role of an Oracle while testing non-functional requirements. On the other hand, the run-time monitor can help in the verification of protocol assertions given in terms of message interchange annotated with time constraints. The work is built over a formal definition of the syntax and semantics of MSC-Graphs, which is similar to (Alur and Yannakakis, 1999) (i.e. based on partial orders). Those MSC-Graphs are enriched with timers and delay intervals in a similar way to (Ben-Abdallah and Leue, 1997) and (Li and Lilius, 1999).","PeriodicalId":186061,"journal":{"name":"Proceedings of the 24th International Conference on Software Engineering. ICSE 2002","volume":"135-136 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2002-05-19","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"131725645","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}
引用次数: 1
An architecture-centric approach to the development of a distributed model-checker for timed automata 为时间自动机开发分布式模型检查器的以体系结构为中心的方法
E. D. Ves, Ana M. C. Ruedin, D. Acevedo, X. Benavent, L. Seijas
Summary form only given, as follows. Research in model checking is focused on increasing the size of the problems that tools can deal with. The ultimate wave has been the use of distributed computing, where a cluster of computers work together to solve the problem. In our work, we present a distributed model checker that is evolved from the Kronos tool and that can handle backwards computation of TCTL (timed computation tree logic) reachability formulae over timed automata. Our proposal, including the arguments of its correctness, is based on software architectures, using a notation adapted from C. Hofmeister et al. (1999). We find such an approach to be a natural and general way to address the development of complex tools that need to incorporate new features and optimizations as they evolve. We introduce some interesting features, such as a-priori graph partitioning (using METIS, a standard library for graph partitioning), sophisticated machinery to reach optimum performance (communication piggybacking and delayed messaging) and dead-time utilization, where every processor uses time intervals of inactivity to perform auxiliary, time-consuming tasks that will later speed up the rest of the computation. The correctness proof strategy combines an architecture evolution with the theoretical results about fix-point calculation developed by P. Cousot (1978).
仅给出摘要形式,如下。模型检查研究的重点是增加工具可以处理的问题的规模。最终的浪潮是分布式计算的使用,在分布式计算中,一组计算机一起工作来解决问题。在我们的工作中,我们提出了一个从Kronos工具演变而来的分布式模型检查器,它可以处理时间自动机上TCTL(时间计算树逻辑)可达性公式的向后计算。我们的建议,包括其正确性的论证,是基于软件架构的,使用的符号改编自C. Hofmeister等人(1999)。我们发现这种方法是一种自然而通用的方法,可以解决复杂工具的开发问题,这些工具在发展过程中需要合并新的特性和优化。我们介绍了一些有趣的特性,例如先验图分区(使用METIS,一个图分区的标准库)、达到最佳性能的复杂机制(通信承载和延迟消息传递)和死时间利用,其中每个处理器使用不活动的时间间隔来执行辅助的、耗时的任务,这些任务稍后将加速其余的计算。正确性证明策略结合了体系结构演变和P. Cousot(1978)提出的关于不动点计算的理论结果。
{"title":"An architecture-centric approach to the development of a distributed model-checker for timed automata","authors":"E. D. Ves, Ana M. C. Ruedin, D. Acevedo, X. Benavent, L. Seijas","doi":"10.1145/581457.581461","DOIUrl":"https://doi.org/10.1145/581457.581461","url":null,"abstract":"Summary form only given, as follows. Research in model checking is focused on increasing the size of the problems that tools can deal with. The ultimate wave has been the use of distributed computing, where a cluster of computers work together to solve the problem. In our work, we present a distributed model checker that is evolved from the Kronos tool and that can handle backwards computation of TCTL (timed computation tree logic) reachability formulae over timed automata. Our proposal, including the arguments of its correctness, is based on software architectures, using a notation adapted from C. Hofmeister et al. (1999). We find such an approach to be a natural and general way to address the development of complex tools that need to incorporate new features and optimizations as they evolve. We introduce some interesting features, such as a-priori graph partitioning (using METIS, a standard library for graph partitioning), sophisticated machinery to reach optimum performance (communication piggybacking and delayed messaging) and dead-time utilization, where every processor uses time intervals of inactivity to perform auxiliary, time-consuming tasks that will later speed up the rest of the computation. The correctness proof strategy combines an architecture evolution with the theoretical results about fix-point calculation developed by P. Cousot (1978).","PeriodicalId":186061,"journal":{"name":"Proceedings of the 24th International Conference on Software Engineering. ICSE 2002","volume":"73 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2002-05-19","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"132895870","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}
引用次数: 22
Performance-related completions for software specifications 软件规范的性能相关完成
Murray Woodside, D. Petriu, K. Siddiqui
To evaluate a software specification for its performance potential, it is necessary to supply additional information, not required for functional specification. Examples range from the execution cost of operations and details of deployment, up to missing subsystems and layers. The term "completions" is used here to include all such additions, including annotations, component insertions, environment infrastructure, deployment, communication patterns, design refinements and scenario or design transformations which correspond to a given deployment style. Completions are related to the purpose of evaluation, so they are tailored to describing the performance at a suitable level of detail. Completions for evaluating other attributes such as reliability or security are also possible. The paper describes how completions are added to a specification regardless of the language used (provided that it describes the system behaviour as well as its structure), and experience with completions in Use Case Maps.
为了评估软件规范的性能潜力,有必要提供功能规范不需要的附加信息。示例范围从操作的执行成本和部署细节,到缺失的子系统和层。这里使用的术语“完成”包括所有此类添加,包括注释、组件插入、环境基础设施、部署、通信模式、设计改进以及与给定部署风格相对应的场景或设计转换。完井与评估的目的相关,因此它们是为了在适当的细节级别上描述性能而定制的。评估其他属性(如可靠性或安全性)的完成也是可能的。本文描述了如何将补全添加到规范中,而不考虑使用的语言(假设它描述了系统行为及其结构),以及在用例图中使用补全的经验。
{"title":"Performance-related completions for software specifications","authors":"Murray Woodside, D. Petriu, K. Siddiqui","doi":"10.1145/581339.581346","DOIUrl":"https://doi.org/10.1145/581339.581346","url":null,"abstract":"To evaluate a software specification for its performance potential, it is necessary to supply additional information, not required for functional specification. Examples range from the execution cost of operations and details of deployment, up to missing subsystems and layers. The term \"completions\" is used here to include all such additions, including annotations, component insertions, environment infrastructure, deployment, communication patterns, design refinements and scenario or design transformations which correspond to a given deployment style. Completions are related to the purpose of evaluation, so they are tailored to describing the performance at a suitable level of detail. Completions for evaluating other attributes such as reliability or security are also possible. The paper describes how completions are added to a specification regardless of the language used (provided that it describes the system behaviour as well as its structure), and experience with completions in Use Case Maps.","PeriodicalId":186061,"journal":{"name":"Proceedings of the 24th International Conference on Software Engineering. ICSE 2002","volume":"1 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2002-05-19","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"130759541","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}
引用次数: 61
ArchJava: connecting software architecture to implementation ArchJava:连接软件架构和实现
Jonathan Aldrich, C. Chambers, D. Notkin
Software architecture describes the structure of a system, enabling more effective design, program understanding, and formal analysis. However, existing approaches decouple implementation code from architecture, allowing inconsistencies, causing confusion, violating architectural properties, and inhibiting software evolution. ArchJava is an extension to Java that seamlessly unifies software architecture with implementation, ensuring that the implementation conforms to architectural constraints. A case study applying ArchJava to a circuit-design application suggests that ArchJava can express architectural structure effectively within an implementation, and that it can aid in program understanding and software evolution.
软件架构描述了系统的结构,支持更有效的设计、程序理解和形式化分析。然而,现有的方法将实现代码从体系结构中分离出来,允许不一致性,导致混乱,违反体系结构属性,并抑制软件发展。ArchJava是Java的扩展,它无缝地将软件体系结构与实现统一起来,确保实现符合体系结构约束。将ArchJava应用于电路设计应用程序的案例研究表明,ArchJava可以在实现中有效地表达体系结构,并且可以帮助程序理解和软件发展。
{"title":"ArchJava: connecting software architecture to implementation","authors":"Jonathan Aldrich, C. Chambers, D. Notkin","doi":"10.1109/ICSE.2002.1007967","DOIUrl":"https://doi.org/10.1109/ICSE.2002.1007967","url":null,"abstract":"Software architecture describes the structure of a system, enabling more effective design, program understanding, and formal analysis. However, existing approaches decouple implementation code from architecture, allowing inconsistencies, causing confusion, violating architectural properties, and inhibiting software evolution. ArchJava is an extension to Java that seamlessly unifies software architecture with implementation, ensuring that the implementation conforms to architectural constraints. A case study applying ArchJava to a circuit-design application suggests that ArchJava can express architectural structure effectively within an implementation, and that it can aid in program understanding and software evolution.","PeriodicalId":186061,"journal":{"name":"Proceedings of the 24th International Conference on Software Engineering. ICSE 2002","volume":"7 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2002-05-19","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"134171943","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}
引用次数: 587
Holistic framework for establishing interoperability of heterogeneous software development tools and models 建立异构软件开发工具和模型的互操作性的整体框架
J. Puett
This research is an initial investigation into the development of the Holistic Framework for Software Engineering (HFSE), which establishes mechanisms by which existing software development tools and models can interoperate. The HFSE captures and uses dependency relationships among heterogeneous software development artifacts, the results of which can be used by software engineers to improve software processes and product integrity.
这项研究是对软件工程整体框架(HFSE)发展的初步调查,它建立了现有软件开发工具和模型可以互操作的机制。HFSE捕获并使用异构软件开发工件之间的依赖关系,其结果可以被软件工程师用来改进软件过程和产品完整性。
{"title":"Holistic framework for establishing interoperability of heterogeneous software development tools and models","authors":"J. Puett","doi":"10.1145/581339.581474","DOIUrl":"https://doi.org/10.1145/581339.581474","url":null,"abstract":"This research is an initial investigation into the development of the Holistic Framework for Software Engineering (HFSE), which establishes mechanisms by which existing software development tools and models can interoperate. The HFSE captures and uses dependency relationships among heterogeneous software development artifacts, the results of which can be used by software engineers to improve software processes and product integrity.","PeriodicalId":186061,"journal":{"name":"Proceedings of the 24th International Conference on Software Engineering. ICSE 2002","volume":"34 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2002-05-19","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"130505541","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}
引用次数: 9
Brazilian software quality in 2002 2002年巴西软件质量奖
K. C. Weber, Célia Joseli do Nascimento
Brazil aims to achieve international standards on quality and productivity in the software sector. From 1993 onwards there are strategies and projects to reach the Brazilian objective on software quality. Since 1995 there have been nationwide surveys on software quality every 2 years. This paper highlights the main trends on software quality in Brazil based both on the results of four surveys (1995, 1997, 1999, and 2001) and on other pieces of evidence. The paper concludes that the software quality in Brazil is continuously improving.
巴西的目标是在软件部门的质量和生产力方面达到国际标准。从1993年开始,有战略和项目来达到巴西在软件质量方面的目标。从1995年开始,每两年对软件质量进行一次全国性的调查。本文根据四次调查(1995年、1997年、1999年和2001年)的结果和其他证据,强调了巴西软件质量的主要趋势。本文的结论是,巴西的软件质量在不断提高。
{"title":"Brazilian software quality in 2002","authors":"K. C. Weber, Célia Joseli do Nascimento","doi":"10.1145/581339.581420","DOIUrl":"https://doi.org/10.1145/581339.581420","url":null,"abstract":"Brazil aims to achieve international standards on quality and productivity in the software sector. From 1993 onwards there are strategies and projects to reach the Brazilian objective on software quality. Since 1995 there have been nationwide surveys on software quality every 2 years. This paper highlights the main trends on software quality in Brazil based both on the results of four surveys (1995, 1997, 1999, and 2001) and on other pieces of evidence. The paper concludes that the software quality in Brazil is continuously improving.","PeriodicalId":186061,"journal":{"name":"Proceedings of the 24th International Conference on Software Engineering. ICSE 2002","volume":"167 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2002-05-19","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"133580599","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}
引用次数: 11
A dynamic pair-program sending architecture for industrial remote operations 一种用于工业远程操作的动态对程序发送体系结构
Takeshi Inoue, Y. Hino, K. Hayashi, M. Narukawa
Remote operations such as maintenance, diagnoses, and command executions are more and more needed in industrial automation domains. Remote operation software that flexibly responds to changes in requirements from factory, chemical plants, or remote-side operators is desired. We developed a dynamic program-sending and automatic starting architecture for this purpose. In the architecture, a pair of programs appears in one remote operation context at a time. One program called a "Worker" is dynamically sent to a plant side and another called a "WorkerGUI" is dynamically sent to a remote operator side. Both programs are simultaneously started and communicate each other using Java/RMI. The remote-side operator's commands via the "WorkerGUI" are sent and executed in the plant side "Worker" program and the execution results are sent back to the operator side "WorkerGUI". By using this architecture, a remote-side operator is able to select best match programs whenever he or she needs, and dynamically send and start them. Thus, the architecture establishes flexible remote operation environments. We explain our architecture first, and then, report the evaluation results through experiences of architecture development, three prototype application developments, and using the applications in a real remote plant operation environment.
远程操作,如维护、诊断和命令执行,在工业自动化领域越来越需要。需要能够灵活响应工厂、化工厂或远程操作人员需求变化的远程操作软件。为此,我们开发了动态程序发送和自动启动体系结构。在该体系结构中,一对程序一次出现在一个远程操作上下文中。一个名为“Worker”的程序被动态地发送到工厂端,另一个名为“WorkerGUI”的程序被动态地发送到远程操作端。两个程序同时启动,并使用Java/RMI相互通信。远程端操作员通过“WorkerGUI”发出命令,在厂端“Worker”程序中执行,执行结果返回操作端“WorkerGUI”。通过使用这种体系结构,远程操作人员可以随时选择最佳匹配程序,并动态发送和启动它们。因此,该体系结构建立了灵活的远程操作环境。我们首先解释了我们的体系结构,然后通过体系结构开发的经验,三个原型应用程序的开发,以及在实际的远程工厂操作环境中使用这些应用程序,报告了评估结果。
{"title":"A dynamic pair-program sending architecture for industrial remote operations","authors":"Takeshi Inoue, Y. Hino, K. Hayashi, M. Narukawa","doi":"10.1145/581384.581387","DOIUrl":"https://doi.org/10.1145/581384.581387","url":null,"abstract":"Remote operations such as maintenance, diagnoses, and command executions are more and more needed in industrial automation domains. Remote operation software that flexibly responds to changes in requirements from factory, chemical plants, or remote-side operators is desired. We developed a dynamic program-sending and automatic starting architecture for this purpose. In the architecture, a pair of programs appears in one remote operation context at a time. One program called a \"Worker\" is dynamically sent to a plant side and another called a \"WorkerGUI\" is dynamically sent to a remote operator side. Both programs are simultaneously started and communicate each other using Java/RMI. The remote-side operator's commands via the \"WorkerGUI\" are sent and executed in the plant side \"Worker\" program and the execution results are sent back to the operator side \"WorkerGUI\". By using this architecture, a remote-side operator is able to select best match programs whenever he or she needs, and dynamically send and start them. Thus, the architecture establishes flexible remote operation environments. We explain our architecture first, and then, report the evaluation results through experiences of architecture development, three prototype application developments, and using the applications in a real remote plant operation environment.","PeriodicalId":186061,"journal":{"name":"Proceedings of the 24th International Conference on Software Engineering. ICSE 2002","volume":"95 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2002-05-19","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"114817214","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
Role-based exploration of object-oriented programs 面向对象程序的基于角色的探索
Brian Demsky, M. Rinard
We present a new technique for helping developers understand heap properties of object-oriented programs and how the actions of the program affect these properties. Our dynamic analysis uses the aliasing properties of objects to synthesize a set of roles; each role represents an abstract object state intended to be of interest to the developer. We allow the developer to customize the analysis to explore the object states and behavior of the program at multiple different and potentially complementary levels of abstraction. The analysis uses roles as the basis for three abstractions: role transition diagrams, which present the observed transitions between roles and the methods responsible for the transitions; role relationship diagrams, which present the observed referencing relationships between objects playing different roles; and enhanced method interfaces, which present the observed roles of method parameters. Together, these abstractions provide useful information about important object and data structure properties and how the actions of the program affect these properties. We have used our implemented role analysis to explore the behavior of several Java programs. Our experience indicates that, when combined with a powerful graphical user interface, roles are a useful abstraction for helping developers explore and understand the behavior of object-oriented programs.
我们提出了一种新技术来帮助开发人员理解面向对象程序的堆属性以及程序的动作如何影响这些属性。我们的动态分析使用对象的混叠属性来合成一组角色;每个角色都代表一个抽象的对象状态,目的是让开发人员感兴趣。我们允许开发人员自定义分析,以在多个不同的和潜在互补的抽象级别上探索程序的对象状态和行为。该分析使用角色作为三个抽象的基础:角色转换图,它表示观察到的角色之间的转换和负责转换的方法;角色关系图,表示扮演不同角色的对象之间观察到的引用关系;以及增强的方法接口,其中显示了方法参数的观察作用。总之,这些抽象提供了有关重要对象和数据结构属性以及程序的操作如何影响这些属性的有用信息。我们已经使用我们实现的角色分析来探索几个Java程序的行为。我们的经验表明,当与强大的图形用户界面相结合时,角色是帮助开发人员探索和理解面向对象程序行为的有用抽象。
{"title":"Role-based exploration of object-oriented programs","authors":"Brian Demsky, M. Rinard","doi":"10.1145/581376.581379","DOIUrl":"https://doi.org/10.1145/581376.581379","url":null,"abstract":"We present a new technique for helping developers understand heap properties of object-oriented programs and how the actions of the program affect these properties. Our dynamic analysis uses the aliasing properties of objects to synthesize a set of roles; each role represents an abstract object state intended to be of interest to the developer. We allow the developer to customize the analysis to explore the object states and behavior of the program at multiple different and potentially complementary levels of abstraction. The analysis uses roles as the basis for three abstractions: role transition diagrams, which present the observed transitions between roles and the methods responsible for the transitions; role relationship diagrams, which present the observed referencing relationships between objects playing different roles; and enhanced method interfaces, which present the observed roles of method parameters. Together, these abstractions provide useful information about important object and data structure properties and how the actions of the program affect these properties. We have used our implemented role analysis to explore the behavior of several Java programs. Our experience indicates that, when combined with a powerful graphical user interface, roles are a useful abstraction for helping developers explore and understand the behavior of object-oriented programs.","PeriodicalId":186061,"journal":{"name":"Proceedings of the 24th International Conference on Software Engineering. ICSE 2002","volume":"19 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2002-05-19","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"121932833","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}
引用次数: 51
Web services engineering: promises and challenges Web服务工程:承诺与挑战
M. Aoyama, S. Weerawarana, H. Maruyama, C. Szyperski, K. Sullivan, D. Lea
Web services are emerging technologies to reuse software as services over the Internet by wrapping underlying computing models with XML. Web services are rapidly evolving and are expected to change the paradigms of both software development and use. This panel will discuss the current status and challenges of Web services technologies.
Web服务是一种新兴技术,通过用XML包装底层计算模型,将软件作为服务在Internet上重用。Web服务正在迅速发展,并有望改变软件开发和使用的范例。这个小组将讨论Web服务技术的现状和挑战。
{"title":"Web services engineering: promises and challenges","authors":"M. Aoyama, S. Weerawarana, H. Maruyama, C. Szyperski, K. Sullivan, D. Lea","doi":"10.1145/581339.581425","DOIUrl":"https://doi.org/10.1145/581339.581425","url":null,"abstract":"Web services are emerging technologies to reuse software as services over the Internet by wrapping underlying computing models with XML. Web services are rapidly evolving and are expected to change the paradigms of both software development and use. This panel will discuss the current status and challenges of Web services technologies.","PeriodicalId":186061,"journal":{"name":"Proceedings of the 24th International Conference on Software Engineering. ICSE 2002","volume":"23 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2002-05-19","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"122900624","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}
引用次数: 78
期刊
Proceedings of the 24th International Conference on Software Engineering. ICSE 2002
全部 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