首页 > 最新文献

Proceedings. 12th IEEE International Workshop on Program Comprehension, 2004.最新文献

英文 中文
Understanding CASE generated legacy applications: a case study 理解CASE生成的遗留应用程序:一个案例研究
Pub Date : 2004-06-24 DOI: 10.1109/WPC.2004.1311053
Camilo Sarmiento, Silvia Takahashi
Reverse engineering for program understanding is always the first step in a reengineering project. When CASE tools are used to develop legacy applications, there are hidden assets that are not usually available. These assets may be very useful for program understanding because they contain design and architectural information usually only found, if at all, in the applications' documentation or are implicit in the code. Reverse engineering this type of applications requires taking advantage of these assets. In this paper, we describe a case study in which we reverse engineer a large legacy application which was constructed using SNAP, a CASE tool for the AS400. By exploiting vital information generated by SNAP, we were able to obtain representations of the application's persistent data and of dependency information of programs that make up the application. This experience led to the definition of guidelines that can be used to tackle the problem of reengineering applications that were developed with CASE tools.
理解程序的逆向工程总是再工程项目的第一步。当使用CASE工具开发遗留应用程序时,存在一些通常不可用的隐藏资产。这些资产可能对程序理解非常有用,因为它们包含设计和体系结构信息,如果有的话,通常只能在应用程序文档中找到,或者隐藏在代码中。逆向工程这种类型的应用程序需要利用这些资产。在本文中,我们描述了一个案例研究,在这个案例研究中,我们对一个大型遗留应用程序进行了逆向工程,该应用程序是使用SNAP (AS400的case工具)构建的。通过利用SNAP生成的重要信息,我们能够获得应用程序持久数据的表示以及组成应用程序的程序的依赖信息。这种经验导致了指导方针的定义,这些指导方针可用于处理用CASE工具开发的再工程应用程序的问题。
{"title":"Understanding CASE generated legacy applications: a case study","authors":"Camilo Sarmiento, Silvia Takahashi","doi":"10.1109/WPC.2004.1311053","DOIUrl":"https://doi.org/10.1109/WPC.2004.1311053","url":null,"abstract":"Reverse engineering for program understanding is always the first step in a reengineering project. When CASE tools are used to develop legacy applications, there are hidden assets that are not usually available. These assets may be very useful for program understanding because they contain design and architectural information usually only found, if at all, in the applications' documentation or are implicit in the code. Reverse engineering this type of applications requires taking advantage of these assets. In this paper, we describe a case study in which we reverse engineer a large legacy application which was constructed using SNAP, a CASE tool for the AS400. By exploiting vital information generated by SNAP, we were able to obtain representations of the application's persistent data and of dependency information of programs that make up the application. This experience led to the definition of guidelines that can be used to tackle the problem of reengineering applications that were developed with CASE tools.","PeriodicalId":164866,"journal":{"name":"Proceedings. 12th IEEE International Workshop on Program Comprehension, 2004.","volume":"65 6 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2004-06-24","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"128351799","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
Programming style changes in evolving source code 编程风格随着源代码的发展而变化
Pub Date : 2004-06-24 DOI: 10.1109/WPC.2004.1311066
A. Mohan, N. Gold
As programs evolve they become harder to maintain as the source code becomes more difficult to comprehend. One aspect of comprehensibility is related to the programming style exhibited by the program. However, as this aspect itself is changed during the maintenance process, we must attempt to maintain the original programming style quality to maintain the comprehensibility of the program. This paper presents the initial findings of an investigation of how one area of programming style (typographical style), changes over the lifetime of a program. The aim is to draw upon these findings to indicate how typographical style should be measured, and where necessary changed, to ensure program comprehensibility.
随着程序的发展,它们变得越来越难以维护,因为源代码变得越来越难以理解。可理解性的一个方面与程序所展示的编程风格有关。但是,由于这方面本身在维护过程中发生了变化,我们必须尽量保持原有的编程风格质量,以保持程序的可理解性。本文介绍了对编程风格(排版风格)的一个领域在程序的生命周期中如何变化的调查的初步发现。其目的是利用这些发现来说明如何衡量排版风格,并在必要时进行更改,以确保程序的可理解性。
{"title":"Programming style changes in evolving source code","authors":"A. Mohan, N. Gold","doi":"10.1109/WPC.2004.1311066","DOIUrl":"https://doi.org/10.1109/WPC.2004.1311066","url":null,"abstract":"As programs evolve they become harder to maintain as the source code becomes more difficult to comprehend. One aspect of comprehensibility is related to the programming style exhibited by the program. However, as this aspect itself is changed during the maintenance process, we must attempt to maintain the original programming style quality to maintain the comprehensibility of the program. This paper presents the initial findings of an investigation of how one area of programming style (typographical style), changes over the lifetime of a program. The aim is to draw upon these findings to indicate how typographical style should be measured, and where necessary changed, to ensure program comprehensibility.","PeriodicalId":164866,"journal":{"name":"Proceedings. 12th IEEE International Workshop on Program Comprehension, 2004.","volume":"1 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2004-06-24","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"130616355","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}
引用次数: 10
Resolving linkage anomalies in extracted software system models 解决提取的软件系统模型中的链接异常
Pub Date : 2004-06-24 DOI: 10.1109/WPC.2004.1311067
Jingwei Wu, R. Holt
Program model linking has been largely overlooked and not constrained properly in the extraction of software system models. This often results in inaccurate system models at different levels of abstraction even if programs can be extracted correctly. This paper describes two constrained approaches toward accurate linkage resolution. The first approach is purely based on a set of linking heuristics. The second approach leverages the software build process and also utilizes linking heuristics. We compare these two approaches and discuss their benefits and limitations. The empirical results from a case study of the PostgreSQL database system are also presented. Our study shows that inappropriate linkage resolution leads to a relatively large number of dependency anomalies at higher levels of abstraction. These anomalies can be effectively removed using our proposed approaches.
在软件系统模型的提取中,程序模型的链接在很大程度上被忽视了,并且没有得到适当的约束。这通常会导致在不同抽象层次上产生不准确的系统模型,即使可以正确地提取程序。本文描述了两种用于精确连杆解析的约束方法。第一种方法纯粹基于一组链接启发式。第二种方法利用了软件构建过程,也利用了链接启发式。我们比较了这两种方法,并讨论了它们的优点和局限性。最后以PostgreSQL数据库系统为例进行了实证研究。我们的研究表明,不适当的链接解析会导致更高抽象层次上相对大量的依赖异常。使用我们提出的方法可以有效地去除这些异常。
{"title":"Resolving linkage anomalies in extracted software system models","authors":"Jingwei Wu, R. Holt","doi":"10.1109/WPC.2004.1311067","DOIUrl":"https://doi.org/10.1109/WPC.2004.1311067","url":null,"abstract":"Program model linking has been largely overlooked and not constrained properly in the extraction of software system models. This often results in inaccurate system models at different levels of abstraction even if programs can be extracted correctly. This paper describes two constrained approaches toward accurate linkage resolution. The first approach is purely based on a set of linking heuristics. The second approach leverages the software build process and also utilizes linking heuristics. We compare these two approaches and discuss their benefits and limitations. The empirical results from a case study of the PostgreSQL database system are also presented. Our study shows that inappropriate linkage resolution leads to a relatively large number of dependency anomalies at higher levels of abstraction. These anomalies can be effectively removed using our proposed approaches.","PeriodicalId":164866,"journal":{"name":"Proceedings. 12th IEEE International Workshop on Program Comprehension, 2004.","volume":"30 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2004-06-24","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"128091196","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}
引用次数: 6
CHIVE - a program source visualisation framework 一个程序源可视化框架
Pub Date : 2004-06-24 DOI: 10.1109/WPC.2004.1311074
B. Cleary, C. Exton
The CHIVE visualisation framework is an attempt to provide program comprehension and visualisation tool developers with a flexible means for creating 3-dimensional visualisations of hierarchies such as those that occur in program source. The CHIVE framework supports user definable datasets, multiple graph layouts and an environment in which users can interact with visualisations created from applying a graph layout to a dataset.
CHIVE可视化框架试图为程序理解和可视化工具开发人员提供一种灵活的方法来创建层次结构的三维可视化,例如那些出现在程序源中的层次结构。CHIVE框架支持用户可定义的数据集、多个图形布局和一个用户可以与应用图形布局到数据集创建的可视化交互的环境。
{"title":"CHIVE - a program source visualisation framework","authors":"B. Cleary, C. Exton","doi":"10.1109/WPC.2004.1311074","DOIUrl":"https://doi.org/10.1109/WPC.2004.1311074","url":null,"abstract":"The CHIVE visualisation framework is an attempt to provide program comprehension and visualisation tool developers with a flexible means for creating 3-dimensional visualisations of hierarchies such as those that occur in program source. The CHIVE framework supports user definable datasets, multiple graph layouts and an environment in which users can interact with visualisations created from applying a graph layout to a dataset.","PeriodicalId":164866,"journal":{"name":"Proceedings. 12th IEEE International Workshop on Program Comprehension, 2004.","volume":"42 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2004-06-24","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"134326996","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}
引用次数: 13
Working in pairs as a means for design knowledge building: an empirical study 结对工作作为设计知识构建的手段:一项实证研究
Pub Date : 2004-06-24 DOI: 10.1109/WPC.2004.1311048
G. Canfora, A. Cimitile, C. A. Visaggio
Pair programming is increasingly attracting researchers' and practitioners' attention. One of the claimed benefits of pair programming consists of easing socialization among programmers, with the effect of transferring tacit knowledge. Designing software systems requires a strong employment of tacit knowledge, such as individual experience and skills. In this paper, the authors, explore the hypothesis that working in pairs can speed up and enforce the knowledge building process among designers. We name "pair designing" the application of pair programming concepts to the design stage. An experiment has been performed to test the effect of pair designing on knowledge building. This paper discusses preliminary results, which confirm the hypothesis of a positive effect of working in pairs on the process of knowledge building.
结对编程越来越受到研究者和实践者的关注。结对编程的好处之一是简化了程序员之间的社会化,具有传递隐性知识的效果。设计软件系统需要大量使用隐性知识,例如个人经验和技能。在本文中,作者探讨了结对工作可以加速和加强设计师之间的知识构建过程的假设。我们称“结对设计”为将结对编程概念应用到设计阶段。通过实验验证了配对设计对知识构建的影响。本文讨论了初步结果,证实了结对工作对知识构建过程有积极作用的假设。
{"title":"Working in pairs as a means for design knowledge building: an empirical study","authors":"G. Canfora, A. Cimitile, C. A. Visaggio","doi":"10.1109/WPC.2004.1311048","DOIUrl":"https://doi.org/10.1109/WPC.2004.1311048","url":null,"abstract":"Pair programming is increasingly attracting researchers' and practitioners' attention. One of the claimed benefits of pair programming consists of easing socialization among programmers, with the effect of transferring tacit knowledge. Designing software systems requires a strong employment of tacit knowledge, such as individual experience and skills. In this paper, the authors, explore the hypothesis that working in pairs can speed up and enforce the knowledge building process among designers. We name \"pair designing\" the application of pair programming concepts to the design stage. An experiment has been performed to test the effect of pair designing on knowledge building. This paper discusses preliminary results, which confirm the hypothesis of a positive effect of working in pairs on the process of knowledge building.","PeriodicalId":164866,"journal":{"name":"Proceedings. 12th IEEE International Workshop on Program Comprehension, 2004.","volume":"1 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2004-06-24","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"130230089","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}
引用次数: 25
An effectiveness measure for software clustering algorithms 软件聚类算法的有效性度量
Pub Date : 2004-06-24 DOI: 10.1109/WPC.2004.1311061
Zhihua Wen, Vassilios Tzerpos
Selecting an appropriate software clustering algorithm that can help the process of understanding a large software system is a challenging issue. The effectiveness of a particular algorithm may be influenced by a number of different factors, such as the types of decompositions produced, or the way clusters are named. In this paper, we introduce an effectiveness measure for software clustering algorithms based on Mojo distance, and describe an algorithm that calculates its value. We also present experiments that demonstrate its improved performance over previous measures, and show how it can be used to assess the effectiveness of software clustering algorithms.
选择合适的软件聚类算法来帮助理解大型软件系统的过程是一个具有挑战性的问题。特定算法的有效性可能受到许多不同因素的影响,例如产生的分解类型或集群的命名方式。本文介绍了一种基于Mojo距离的软件聚类算法的有效性度量,并描述了一种计算其值的算法。我们还提出了实验,证明了它比以前的测量方法的性能有所提高,并展示了如何使用它来评估软件聚类算法的有效性。
{"title":"An effectiveness measure for software clustering algorithms","authors":"Zhihua Wen, Vassilios Tzerpos","doi":"10.1109/WPC.2004.1311061","DOIUrl":"https://doi.org/10.1109/WPC.2004.1311061","url":null,"abstract":"Selecting an appropriate software clustering algorithm that can help the process of understanding a large software system is a challenging issue. The effectiveness of a particular algorithm may be influenced by a number of different factors, such as the types of decompositions produced, or the way clusters are named. In this paper, we introduce an effectiveness measure for software clustering algorithms based on Mojo distance, and describe an algorithm that calculates its value. We also present experiments that demonstrate its improved performance over previous measures, and show how it can be used to assess the effectiveness of software clustering algorithms.","PeriodicalId":164866,"journal":{"name":"Proceedings. 12th IEEE International Workshop on Program Comprehension, 2004.","volume":"104 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2004-06-24","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"132527724","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}
引用次数: 155
Understanding modifications in state-based models 理解基于状态的模型中的修改
Pub Date : 2004-06-24 DOI: 10.1109/WPC.2004.1311068
B. Korel, L. Tahat
System modeling is a widely used technique to model state-based systems. System models are frequently large and complex and are hard to understand. In addition, they are frequently modified because of specification changes. Understanding the effect of these changes on the model and the system may be very difficult for large models. In this paper, we present an approach that may support understanding the effect of model modifications. The goal is to identify these parts of the model that may exhibit different behavior because of the modification. In this approach, the difference between the original model and the modified model is identified and then affected parts of the model are computed based on model dependence analysis. Our initial experience shows that the approach may be helpful in understanding the effect of modifications on the system.
系统建模是一种广泛使用的基于状态的系统建模技术。系统模型通常很大很复杂,很难理解。此外,由于规范的变化,它们经常被修改。对于大型模型来说,理解这些变化对模型和系统的影响可能非常困难。在本文中,我们提出了一种方法,可以支持理解模型修改的影响。目标是识别由于修改而可能表现出不同行为的模型的这些部分。该方法首先识别原模型与修正模型之间的差异,然后基于模型依赖分析计算模型的影响部分。我们最初的经验表明,该方法可能有助于理解修改对系统的影响。
{"title":"Understanding modifications in state-based models","authors":"B. Korel, L. Tahat","doi":"10.1109/WPC.2004.1311068","DOIUrl":"https://doi.org/10.1109/WPC.2004.1311068","url":null,"abstract":"System modeling is a widely used technique to model state-based systems. System models are frequently large and complex and are hard to understand. In addition, they are frequently modified because of specification changes. Understanding the effect of these changes on the model and the system may be very difficult for large models. In this paper, we present an approach that may support understanding the effect of model modifications. The goal is to identify these parts of the model that may exhibit different behavior because of the modification. In this approach, the difference between the original model and the modified model is identified and then affected parts of the model are computed based on model dependence analysis. Our initial experience shows that the approach may be helpful in understanding the effect of modifications on the system.","PeriodicalId":164866,"journal":{"name":"Proceedings. 12th IEEE International Workshop on Program Comprehension, 2004.","volume":"6 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2004-06-24","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"126562492","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}
引用次数: 6
Architectural views through collapsing strategies 通过折叠策略的架构视图
Pub Date : 2004-06-24 DOI: 10.1109/WPC.2004.1311052
Christoph Stoermer, L. O'Brien, C. Verhoef
Architectural views help to better understand and analyze software from particular stakeholder perspectives. Views are abstractions that are generated in an architecture reconstruction effort with collapsing strategies. Collapsing is the mechanism to aggregate detailed source information into architectural elements that constitute the architectural views. The elements are presented in a particular viewtype and style. Traditional software architecture reconstruction tools assume that source elements are collapsed into mostly one container. However, the satellite tracking system case study, outlined in this paper, required the introduction of multicollapses. Multicollapses allow the aggregation of one element into multiple containers. Multicollapses are either the result of applying incorrect collapsing strategies or an excellent starting point for software analysis to gain better understanding of existing software. We describe implementation and visualization aspects of multicollapses within an architecture reconstruction environment.
架构视图有助于从特定涉众的角度更好地理解和分析软件。视图是在架构重构工作中使用折叠策略生成的抽象。折叠是将详细的源信息聚合到构成体系结构视图的体系结构元素中的机制。元素以特定的视图类型和样式呈现。传统的软件体系结构重构工具假定源元素基本上被压缩到一个容器中。然而,本文概述的卫星跟踪系统案例研究需要引入多重崩溃。多重折叠允许将一个元素聚合到多个容器中。多重崩溃要么是应用不正确的崩溃策略的结果,要么是软件分析的一个很好的起点,以便更好地理解现有软件。我们描述了在架构重建环境中多重崩溃的实现和可视化方面。
{"title":"Architectural views through collapsing strategies","authors":"Christoph Stoermer, L. O'Brien, C. Verhoef","doi":"10.1109/WPC.2004.1311052","DOIUrl":"https://doi.org/10.1109/WPC.2004.1311052","url":null,"abstract":"Architectural views help to better understand and analyze software from particular stakeholder perspectives. Views are abstractions that are generated in an architecture reconstruction effort with collapsing strategies. Collapsing is the mechanism to aggregate detailed source information into architectural elements that constitute the architectural views. The elements are presented in a particular viewtype and style. Traditional software architecture reconstruction tools assume that source elements are collapsed into mostly one container. However, the satellite tracking system case study, outlined in this paper, required the introduction of multicollapses. Multicollapses allow the aggregation of one element into multiple containers. Multicollapses are either the result of applying incorrect collapsing strategies or an excellent starting point for software analysis to gain better understanding of existing software. We describe implementation and visualization aspects of multicollapses within an architecture reconstruction environment.","PeriodicalId":164866,"journal":{"name":"Proceedings. 12th IEEE International Workshop on Program Comprehension, 2004.","volume":"14 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2004-06-24","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"127683511","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
Challenges and requirements for an effective trace exploration tool 有效轨迹探测工具的挑战和需求
Pub Date : 2004-06-24 DOI: 10.1109/WPC.2004.1311049
A. Hamou-Lhadj, T. Lethbridge, Lianjiang Fu
Building efficient tools for the analysis and exploration of large execution traces can be a very challenging task. Our experience with building a tool called SEAT (software exploration and analysis tool) shows that there is a need to address several key research questions in order to overcome these challenges. SEAT is intended to integrate several filtering techniques to tackle the size explosion problem that make traces hard to understand. However, the incorporation of these techniques into one efficient tool raises many issues. This paper focuses on these issues and underlies future research directions to advance the area of dynamic analysis of large software systems.
为分析和探索大型执行轨迹构建有效的工具可能是一项非常具有挑战性的任务。我们构建一个名为SEAT(软件探索和分析工具)的工具的经验表明,为了克服这些挑战,有必要解决几个关键的研究问题。SEAT旨在集成几种过滤技术,以解决尺寸爆炸问题,使痕迹难以理解。然而,将这些技术整合到一个有效的工具中会产生许多问题。本文对这些问题进行了探讨,并指出了未来的研究方向,以推动大型软件系统动态分析领域的发展。
{"title":"Challenges and requirements for an effective trace exploration tool","authors":"A. Hamou-Lhadj, T. Lethbridge, Lianjiang Fu","doi":"10.1109/WPC.2004.1311049","DOIUrl":"https://doi.org/10.1109/WPC.2004.1311049","url":null,"abstract":"Building efficient tools for the analysis and exploration of large execution traces can be a very challenging task. Our experience with building a tool called SEAT (software exploration and analysis tool) shows that there is a need to address several key research questions in order to overcome these challenges. SEAT is intended to integrate several filtering techniques to tackle the size explosion problem that make traces hard to understand. However, the incorporation of these techniques into one efficient tool raises many issues. This paper focuses on these issues and underlies future research directions to advance the area of dynamic analysis of large software systems.","PeriodicalId":164866,"journal":{"name":"Proceedings. 12th IEEE International Workshop on Program Comprehension, 2004.","volume":"81 2 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2004-06-24","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"116700644","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
Working session: program comprehension strategies for Web service and service-oriented architectures 工作会议:Web服务和面向服务的体系结构的程序理解策略
Pub Date : 2004-06-24 DOI: 10.1109/WPC.2004.1311071
L. O'Brien, Dennis B. Smith
The availability of the Web has made it possible to provide new life to legacy systems as Web services components within a service-oriented architecture. Web services are self-contained, modular applications that can be described, published, located, and invoked over a network, generally, the World Wide Web. The service-oriented architecture describes three roles: service provider, service requester and service broker; and three basic operations: publish, find and bind. A network component can play any or all of these roles. Web services focus on the integration and infrastructure complexities of B2B by leveraging the benefits of Web service technologies, Internet standards and common infrastructures. While the migration to Web services has the potential of providing significant value to legacy systems and components, a number of critical program comprehension issues need to be addressed. These include understanding the legacy systems and components in enough detail to make decisions on the types of changes that need to be made for using them within the new service-oriented architecture, understanding the legacy and target architectures, and analyzing the specific Web service technologies that will be required and how to incorporate the legacy components as services. This working session will discuss approaches for addressing these issues. Based on the results of the session, a working model will be developed that lists current approaches, their strengths and weaknesses, as well as current open issues.
Web的可用性使得在面向服务的体系结构中作为Web服务组件为遗留系统提供新的生命成为可能。Web服务是自包含的模块化应用程序,可以通过网络(通常是万维网)对其进行描述、发布、定位和调用。面向服务的体系结构描述了三个角色:服务提供者、服务请求者和服务代理;还有三个基本操作:发布、查找和绑定。网络组件可以扮演这些角色中的任何一个或所有角色。Web服务通过利用Web服务技术、Internet标准和公共基础设施的优势,专注于B2B的集成和基础设施的复杂性。虽然向Web服务的迁移有可能为遗留系统和组件提供重要的价值,但是需要解决许多关键的程序理解问题。这包括足够详细地理解遗留系统和组件,以便对在新的面向服务的体系结构中使用遗留系统和组件所需进行的更改类型做出决策,理解遗留和目标体系结构,并分析所需的特定Web服务技术以及如何将遗留组件合并为服务。本次工作会议将讨论解决这些问题的方法。根据会议的结果,将制定一个工作模型,列出目前的方法、它们的优点和缺点,以及目前尚未解决的问题。
{"title":"Working session: program comprehension strategies for Web service and service-oriented architectures","authors":"L. O'Brien, Dennis B. Smith","doi":"10.1109/WPC.2004.1311071","DOIUrl":"https://doi.org/10.1109/WPC.2004.1311071","url":null,"abstract":"The availability of the Web has made it possible to provide new life to legacy systems as Web services components within a service-oriented architecture. Web services are self-contained, modular applications that can be described, published, located, and invoked over a network, generally, the World Wide Web. The service-oriented architecture describes three roles: service provider, service requester and service broker; and three basic operations: publish, find and bind. A network component can play any or all of these roles. Web services focus on the integration and infrastructure complexities of B2B by leveraging the benefits of Web service technologies, Internet standards and common infrastructures. While the migration to Web services has the potential of providing significant value to legacy systems and components, a number of critical program comprehension issues need to be addressed. These include understanding the legacy systems and components in enough detail to make decisions on the types of changes that need to be made for using them within the new service-oriented architecture, understanding the legacy and target architectures, and analyzing the specific Web service technologies that will be required and how to incorporate the legacy components as services. This working session will discuss approaches for addressing these issues. Based on the results of the session, a working model will be developed that lists current approaches, their strengths and weaknesses, as well as current open issues.","PeriodicalId":164866,"journal":{"name":"Proceedings. 12th IEEE International Workshop on Program Comprehension, 2004.","volume":"11 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2004-06-24","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"115458835","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}
引用次数: 4
期刊
Proceedings. 12th IEEE International Workshop on Program Comprehension, 2004.
全部 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学术文献互助群
群 号:481959085
Book学术
文献互助 智能选刊 最新文献 互助须知 联系我们:info@booksci.cn
Book学术提供免费学术资源搜索服务,方便国内外学者检索中英文文献。致力于提供最便捷和优质的服务体验。
Copyright © 2023 Book学术 All rights reserved.
ghs 京公网安备 11010802042870号 京ICP备2023020795号-1