首页 > 最新文献

Proceedings Fifth Working Conference on Reverse Engineering (Cat. No.98TB100261)最新文献

英文 中文
Requirements for integrating software architecture and reengineering models: CORUM II 集成软件架构和再工程模型的需求:CORUM II
Pub Date : 1998-10-12 DOI: 10.1109/WCRE.1998.723185
R. Kazman, Steven S. Woods, Steven Jeromy Carriere
This paper discusses the requirements and a generic framework for the integration of architectural and code-based reengineering tools. This framework is needed because there is a large number of stand-alone reengineering tools that operate at different levels of abstraction ranging from "code-level" to software architecture. For the purposes of reengineering a complete system however, these tools need to be able to share information so that not only can the code be updated or corrected, but also the system's software architecture can be simultaneously rationalized or modernized. To this end, we have built upon the CORUM model of reengineering tool interoperation to include software architecture concepts and tools. This extended framework-called CORUM II-is organized around the metaphor of a "horseshoe", where the left-hand side of the horseshoe consists of fact extraction from an existing system, the right hand side consists of development activities, and the bridge between the sides consists of a set of transformations from the old to the new.
本文讨论了集成体系结构和基于代码的再工程工具的需求和通用框架。这个框架是必需的,因为有大量独立的再工程工具,它们在从“代码级”到软件体系结构的不同抽象级别上运行。然而,为了重新设计一个完整的系统,这些工具需要能够共享信息,这样不仅可以更新或纠正代码,而且系统的软件架构也可以同时合理化或现代化。为此,我们建立了再造工具互操作的CORUM模型,以包括软件体系结构概念和工具。这个被称为CORUM ii的扩展框架是围绕“马蹄铁”的隐喻来组织的,马蹄铁的左手边包括从现有系统中提取的事实,右手边包括开发活动,两边之间的桥梁包括一系列从旧到新的转换。
{"title":"Requirements for integrating software architecture and reengineering models: CORUM II","authors":"R. Kazman, Steven S. Woods, Steven Jeromy Carriere","doi":"10.1109/WCRE.1998.723185","DOIUrl":"https://doi.org/10.1109/WCRE.1998.723185","url":null,"abstract":"This paper discusses the requirements and a generic framework for the integration of architectural and code-based reengineering tools. This framework is needed because there is a large number of stand-alone reengineering tools that operate at different levels of abstraction ranging from \"code-level\" to software architecture. For the purposes of reengineering a complete system however, these tools need to be able to share information so that not only can the code be updated or corrected, but also the system's software architecture can be simultaneously rationalized or modernized. To this end, we have built upon the CORUM model of reengineering tool interoperation to include software architecture concepts and tools. This extended framework-called CORUM II-is organized around the metaphor of a \"horseshoe\", where the left-hand side of the horseshoe consists of fact extraction from an existing system, the right hand side consists of development activities, and the bridge between the sides consists of a set of transformations from the old to the new.","PeriodicalId":345730,"journal":{"name":"Proceedings Fifth Working Conference on Reverse Engineering (Cat. No.98TB100261)","volume":"261 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"1998-10-12","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"116568520","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}
引用次数: 171
Program comprehension in multi-language systems 多语言系统中的程序理解
Pub Date : 1998-10-12 DOI: 10.1109/WCRE.1998.723183
Bernt Kullbach, A. Winter, Peter Dahm, J. Ebert
This paper presents an approach to program comprehension in multi-language systems. Such systems are characterized by a high amount of source codes in various languages for programming, database definition and job control. Coping with those systems requires the references crossing the language boundaries to be analyzed. Using the EER/GRAL approach to graph-based conceptual modeling, models representing relevant aspects of single language are built and integrated into a common conceptual model. Since conceptual modeling focusses on specific problems, the integrated model presented here is especially tailored to multi-language aspects. Software systems are parsed and represented according to this conceptual model and queried by using a powerful graph query mechanism. This allows multi-language cross references to be easily retrieved. The multi-language conceptual model and the query facilities have been developed in cooperation with the maintenance programmers at an insurance company within the GUPRO project.
本文提出了一种多语言系统的程序理解方法。这类系统的特点是大量使用各种语言编写的源代码,用于编程、数据库定义和作业控制。处理这些系统需要对跨语言边界的引用进行分析。使用EER/GRAL方法进行基于图的概念建模,构建代表单一语言相关方面的模型并将其集成到一个公共概念模型中。由于概念建模关注的是具体问题,因此这里提出的集成模型特别适合多语言方面。根据该概念模型对软件系统进行解析和表示,并利用强大的图查询机制对软件系统进行查询。这允许很容易地检索多语言交叉引用。多语言概念模型和查询工具是在GUPRO项目中与一家保险公司的维护程序员合作开发的。
{"title":"Program comprehension in multi-language systems","authors":"Bernt Kullbach, A. Winter, Peter Dahm, J. Ebert","doi":"10.1109/WCRE.1998.723183","DOIUrl":"https://doi.org/10.1109/WCRE.1998.723183","url":null,"abstract":"This paper presents an approach to program comprehension in multi-language systems. Such systems are characterized by a high amount of source codes in various languages for programming, database definition and job control. Coping with those systems requires the references crossing the language boundaries to be analyzed. Using the EER/GRAL approach to graph-based conceptual modeling, models representing relevant aspects of single language are built and integrated into a common conceptual model. Since conceptual modeling focusses on specific problems, the integrated model presented here is especially tailored to multi-language aspects. Software systems are parsed and represented according to this conceptual model and queried by using a powerful graph query mechanism. This allows multi-language cross references to be easily retrieved. The multi-language conceptual model and the query facilities have been developed in cooperation with the maintenance programmers at an insurance company within the GUPRO project.","PeriodicalId":345730,"journal":{"name":"Proceedings Fifth Working Conference on Reverse Engineering (Cat. No.98TB100261)","volume":"127 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"1998-10-12","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"130769433","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}
引用次数: 80
A visual representation model for software subsystem decomposition 软件子系统分解的可视化表示模型
Pub Date : 1998-10-12 DOI: 10.1109/WCRE.1998.723193
C. M. D. Oca, D. Carver
Decomposing a software system into subsystems is an important activity in the reverse engineering and maintenance domains. One approach to subsystem decomposition is based on data mining techniques. The ISA (Identification of Subsystems based on Associations) methodology decomposes a software system into subsystems by mining association rules from a database representation of the target system. This paper defines a visual representation model (RM) to graphically present the information produced by ISA. RM provides a graphical view of the recovered subsystem decomposition, the subsystems components, and the relationships among the subsystems. RM includes notation to represent hierarchies of file implications and hierarchies of subsystems. Results of applying RM to represent the subsystem decomposition of a COBOL system are discussed.
在逆向工程和维护领域,将软件系统分解为子系统是一项重要的活动。子系统分解的一种方法是基于数据挖掘技术。ISA(基于关联的子系统识别)方法通过从目标系统的数据库表示中挖掘关联规则,将软件系统分解为子系统。本文定义了可视化表示模型(RM),以图形化的方式表示ISA产生的信息。RM提供了恢复的子系统分解、子系统组件和子系统之间关系的图形视图。RM包括表示文件隐含层次结构和子系统层次结构的符号。讨论了用RM表示COBOL系统的子系统分解的结果。
{"title":"A visual representation model for software subsystem decomposition","authors":"C. M. D. Oca, D. Carver","doi":"10.1109/WCRE.1998.723193","DOIUrl":"https://doi.org/10.1109/WCRE.1998.723193","url":null,"abstract":"Decomposing a software system into subsystems is an important activity in the reverse engineering and maintenance domains. One approach to subsystem decomposition is based on data mining techniques. The ISA (Identification of Subsystems based on Associations) methodology decomposes a software system into subsystems by mining association rules from a database representation of the target system. This paper defines a visual representation model (RM) to graphically present the information produced by ISA. RM provides a graphical view of the recovered subsystem decomposition, the subsystems components, and the relationships among the subsystems. RM includes notation to represent hierarchies of file implications and hierarchies of subsystems. Results of applying RM to represent the subsystem decomposition of a COBOL system are discussed.","PeriodicalId":345730,"journal":{"name":"Proceedings Fifth Working Conference on Reverse Engineering (Cat. No.98TB100261)","volume":"57 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"1998-10-12","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"132998268","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
A graph-based object identification process for procedural programs 一个基于图形的对象识别过程程序程序
Pub Date : 1998-10-12 DOI: 10.1109/WCRE.1998.723175
Ramachenga R. Valasareddi, D. Carver
We describe a reengineering process for transforming procedural systems into object-oriented systems. The method is based on the program representation model, which is restructured by merging together cohesive components of the system. We present the model restructuring technique and discuss how the restructured model can be used for object identification.
我们描述了将过程系统转换为面向对象系统的再造过程。该方法基于程序表示模型,通过将系统内聚构件合并在一起进行重构。我们提出了模型重构技术,并讨论了如何将重构后的模型用于对象识别。
{"title":"A graph-based object identification process for procedural programs","authors":"Ramachenga R. Valasareddi, D. Carver","doi":"10.1109/WCRE.1998.723175","DOIUrl":"https://doi.org/10.1109/WCRE.1998.723175","url":null,"abstract":"We describe a reengineering process for transforming procedural systems into object-oriented systems. The method is based on the program representation model, which is restructured by merging together cohesive components of the system. We present the model restructuring technique and discuss how the restructured model can be used for object identification.","PeriodicalId":345730,"journal":{"name":"Proceedings Fifth Working Conference on Reverse Engineering (Cat. No.98TB100261)","volume":"1 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"1998-10-12","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"130701239","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}
引用次数: 23
Incremental migration strategies: data flow analysis for wrapping 增量迁移策略:包装的数据流分析
Pub Date : 1998-10-12 DOI: 10.1109/WCRE.1998.723176
A. Cimitile, U. D. Carlini, A. D. Lucia
Incremental migration strategies entail the decomposition of large legacy systems in components that can be independently and selectively replaced; this reduces the costs and risks of a migration program. The legacy components are encapsulated into object wrappers and used (through the wrapper interface) in their original form until new components take up their functions with an acceptable level of reliability. The decomposition of legacy programs in components to be encapsulated in different wrappers involves reengineering activities for creating a new program for each component. Data flow analysis methods are needed for identifying the formal parameters in the interfaces of such programs. We present the approach defined within the project ERCOLE, a research project aiming at migrating legacy systems towards object-oriented platforms.
增量迁移策略需要将大型遗留系统分解为可以独立和有选择地替换的组件;这降低了迁移程序的成本和风险。遗留组件被封装到对象包装器中,并以其原始形式使用(通过包装器接口),直到新组件以可接受的可靠性级别接管其功能。要封装在不同包装器中的组件中的遗留程序的分解涉及到为每个组件创建新程序的再工程活动。需要数据流分析方法来识别这类程序接口中的形式参数。我们提出了在项目ERCOLE中定义的方法,这是一个旨在将遗留系统迁移到面向对象平台的研究项目。
{"title":"Incremental migration strategies: data flow analysis for wrapping","authors":"A. Cimitile, U. D. Carlini, A. D. Lucia","doi":"10.1109/WCRE.1998.723176","DOIUrl":"https://doi.org/10.1109/WCRE.1998.723176","url":null,"abstract":"Incremental migration strategies entail the decomposition of large legacy systems in components that can be independently and selectively replaced; this reduces the costs and risks of a migration program. The legacy components are encapsulated into object wrappers and used (through the wrapper interface) in their original form until new components take up their functions with an acceptable level of reliability. The decomposition of legacy programs in components to be encapsulated in different wrappers involves reengineering activities for creating a new program for each component. Data flow analysis methods are needed for identifying the formal parameters in the interfaces of such programs. We present the approach defined within the project ERCOLE, a research project aiming at migrating legacy systems towards object-oriented platforms.","PeriodicalId":345730,"journal":{"name":"Proceedings Fifth Working Conference on Reverse Engineering (Cat. No.98TB100261)","volume":"23 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"1998-10-12","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"129793048","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}
引用次数: 32
On reverse engineering of vendor databases 厂商数据库逆向工程研究
Pub Date : 1998-10-12 DOI: 10.1109/WCRE.1998.723188
M. Blaha
We articulate the notion of reverse engineering of vendor databases and argue that this is a compelling technology that organizations should be routinely practicing. We take the perspective of a large organization that is a consumer of software (and not the perspective of a software vendor). We frequently reverse engineer vendor databases in our consulting practice and the technology has been enthusiastically received by industry.
我们阐明了供应商数据库逆向工程的概念,并认为这是一项令人信服的技术,组织应该经常实践。我们从一个大型组织的角度来看,它是软件的消费者(而不是软件供应商的角度)。在我们的咨询实践中,我们经常对供应商数据库进行逆向工程,并且该技术已受到业界的热烈欢迎。
{"title":"On reverse engineering of vendor databases","authors":"M. Blaha","doi":"10.1109/WCRE.1998.723188","DOIUrl":"https://doi.org/10.1109/WCRE.1998.723188","url":null,"abstract":"We articulate the notion of reverse engineering of vendor databases and argue that this is a compelling technology that organizations should be routinely practicing. We take the perspective of a large organization that is a consumer of software (and not the perspective of a software vendor). We frequently reverse engineer vendor databases in our consulting practice and the technology has been enthusiastically received by industry.","PeriodicalId":345730,"journal":{"name":"Proceedings Fifth Working Conference on Reverse Engineering (Cat. No.98TB100261)","volume":"38 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"1998-10-12","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"124356827","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}
引用次数: 24
PACKRAT: a software reengineering case study PACKRAT:一个软件再工程案例研究
Pub Date : 1998-10-12 DOI: 10.1109/WCRE.1998.723182
G. Gannod, Gora Sudindranath, Mark Fagnani, B. Cheng
Reengineering is the process of examination, understanding, and alteration of a system with the intent of implementing the system in a new form. Many approaches for design recovery or reverse engineering have been suggested, most with some type of support tool. Since a project's time constraints may prohibit use of sophisticated techniques and/or tools due to the learning curves associated with the techniques and tools, methods that can be applied in lieu of complex support tools may be required. This paper describes a case study project involving the reengineering of a network application used by Texas Instruments to monitor network traffic in a local area network.
再造是为了以新的形式实现系统而对系统进行检查、理解和修改的过程。已经提出了许多设计恢复或逆向工程的方法,其中大多数都带有某种类型的支持工具。由于项目的时间限制,由于与技术和工具相关的学习曲线,可能禁止使用复杂的技术和/或工具,因此可能需要使用可以代替复杂支持工具的方法。本文描述了一个案例研究项目,涉及德州仪器用于监控局域网网络流量的网络应用程序的重新设计。
{"title":"PACKRAT: a software reengineering case study","authors":"G. Gannod, Gora Sudindranath, Mark Fagnani, B. Cheng","doi":"10.1109/WCRE.1998.723182","DOIUrl":"https://doi.org/10.1109/WCRE.1998.723182","url":null,"abstract":"Reengineering is the process of examination, understanding, and alteration of a system with the intent of implementing the system in a new form. Many approaches for design recovery or reverse engineering have been suggested, most with some type of support tool. Since a project's time constraints may prohibit use of sophisticated techniques and/or tools due to the learning curves associated with the techniques and tools, methods that can be applied in lieu of complex support tools may be required. This paper describes a case study project involving the reengineering of a network application used by Texas Instruments to monitor network traffic in a local area network.","PeriodicalId":345730,"journal":{"name":"Proceedings Fifth Working Conference on Reverse Engineering (Cat. No.98TB100261)","volume":"1 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"1998-10-12","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"128709260","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}
引用次数: 5
FEPSS: a flexible and extensible program comprehension support system FEPSS:一个灵活的、可扩展的程序理解支持系统
Pub Date : 1998-10-12 DOI: 10.1109/WCRE.1998.723174
T. Lin, L. O'Brien
This paper describes the architecture of an ongoing developed Flexible and Extensible Program comprehension Support System (FEPSS). Program comprehension is a process for supporting users to understand a software system and is required for forward, reverse engineering, and re-engineering. In a program comprehension process some artifacts such as control-flow graphs and data-flow graphs need to be generated to help users in understanding and some artifacts such as design rationale and testing cases also need to be recorded for further re-engineering. It is impossible to predict all the types of artifacts to be supported in a program comprehension process as at least no one makes a re-engineering plan when designing a new software system. Therefore a program comprehension system should support a great flexibility and extensibility in artifact modelling. The approach which FEPSS takes is to provide a support system where the users can add new artifacts even at run time. FEPSS uses a relational object model to link the artifacts in order to integrate various activities in a program comprehension process as a whole. To help users to understand the artifacts and their relationships FEPSS uses 3D visualization to display artifacts. As the number of the artifacts for a software system can be very large FEPSS provides a navigation tool for users to control what artifacts to display. Based on these mechanisms, FEPSS can support users to analyze, model, and explore the artifacts through pictures.
本文描述了一个正在开发的灵活可扩展程序理解支持系统(FEPSS)的体系结构。程序理解是支持用户理解软件系统的过程,是正向工程、逆向工程和再工程所必需的。在程序理解过程中,需要生成一些工件,如控制流图和数据流图,以帮助用户理解,还需要记录一些工件,如设计原理和测试用例,以便进一步重新设计。在程序理解过程中预测所有类型的工件是不可能的,因为在设计一个新的软件系统时,至少没有人制定一个重新工程的计划。因此,程序理解系统应该在工件建模中支持很大的灵活性和可扩展性。FEPSS采用的方法是提供一个支持系统,用户甚至可以在运行时添加新的工件。FEPSS使用关系对象模型来连接工件,以便将程序理解过程中的各种活动作为一个整体集成。为了帮助用户理解工件及其关系,FEPSS使用3D可视化来显示工件。由于软件系统的工件数量可能非常大,FEPSS为用户提供了一个导航工具来控制要显示的工件。基于这些机制,FEPSS可以支持用户通过图片分析、建模和探索工件。
{"title":"FEPSS: a flexible and extensible program comprehension support system","authors":"T. Lin, L. O'Brien","doi":"10.1109/WCRE.1998.723174","DOIUrl":"https://doi.org/10.1109/WCRE.1998.723174","url":null,"abstract":"This paper describes the architecture of an ongoing developed Flexible and Extensible Program comprehension Support System (FEPSS). Program comprehension is a process for supporting users to understand a software system and is required for forward, reverse engineering, and re-engineering. In a program comprehension process some artifacts such as control-flow graphs and data-flow graphs need to be generated to help users in understanding and some artifacts such as design rationale and testing cases also need to be recorded for further re-engineering. It is impossible to predict all the types of artifacts to be supported in a program comprehension process as at least no one makes a re-engineering plan when designing a new software system. Therefore a program comprehension system should support a great flexibility and extensibility in artifact modelling. The approach which FEPSS takes is to provide a support system where the users can add new artifacts even at run time. FEPSS uses a relational object model to link the artifacts in order to integrate various activities in a program comprehension process as a whole. To help users to understand the artifacts and their relationships FEPSS uses 3D visualization to display artifacts. As the number of the artifacts for a software system can be very large FEPSS provides a navigation tool for users to control what artifacts to display. Based on these mechanisms, FEPSS can support users to analyze, model, and explore the artifacts through pictures.","PeriodicalId":345730,"journal":{"name":"Proceedings Fifth Working Conference on Reverse Engineering (Cat. No.98TB100261)","volume":"8 2 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"1998-10-12","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"132629647","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}
引用次数: 5
Scalable visualizations to support reverse engineering: a framework for evaluation 支持逆向工程的可伸缩可视化:用于评估的框架
Pub Date : 1998-10-12 DOI: 10.1109/WCRE.1998.723190
J. Cross, T. D. Hendrix, L. Barowski, K. S. Mathias
Visualizations of software can be utilized in varying degrees throughout the software development cycle as aids to comprehension, analysis, and measurement. This research focuses on the experimental evaluation and refinement of a set of scalable visualizations that show promise for improving the overall software process. The roles which visualizations may play during reverse engineering and maintenance are of particular interest. This research also investigates the manner in which software visualizations are used in practice by software professionals. Partners from government and industry have agreed to participate by providing access to appropriate production software. This paper will describe a framework for evaluating visual techniques and investigating their practical use and application.
软件的可视化可以在整个软件开发周期中以不同的程度被用作理解、分析和度量的辅助工具。本研究的重点是实验评估和改进一组可扩展的可视化,这些可视化显示了改善整个软件过程的希望。可视化在逆向工程和维护过程中可能扮演的角色是特别有趣的。本研究还调查了软件专业人员在实践中使用软件可视化的方式。来自政府和工业界的合作伙伴已经同意通过提供适当的生产软件来参与。本文将描述一个评估视觉技术并研究其实际使用和应用的框架。
{"title":"Scalable visualizations to support reverse engineering: a framework for evaluation","authors":"J. Cross, T. D. Hendrix, L. Barowski, K. S. Mathias","doi":"10.1109/WCRE.1998.723190","DOIUrl":"https://doi.org/10.1109/WCRE.1998.723190","url":null,"abstract":"Visualizations of software can be utilized in varying degrees throughout the software development cycle as aids to comprehension, analysis, and measurement. This research focuses on the experimental evaluation and refinement of a set of scalable visualizations that show promise for improving the overall software process. The roles which visualizations may play during reverse engineering and maintenance are of particular interest. This research also investigates the manner in which software visualizations are used in practice by software professionals. Partners from government and industry have agreed to participate by providing access to appropriate production software. This paper will describe a framework for evaluating visual techniques and investigating their practical use and application.","PeriodicalId":345730,"journal":{"name":"Proceedings Fifth Working Conference on Reverse Engineering (Cat. No.98TB100261)","volume":"18 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"1998-10-12","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"121880913","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}
引用次数: 15
Structural manipulations of software architecture using Tarski relational algebra 使用Tarski关系代数的软件架构的结构操作
Pub Date : 1998-10-12 DOI: 10.1109/WCRE.1998.723191
R. Holt
A software architecture is typically drawn as a nested set of box and arrow diagrams. The boxes represent components of the software system and the edges represent interactions These diagrams correspond to typed graphs, in which there are a number of "types" or "colors" of edges, and in which there is a distinguished "contain" relation that represents the system hierarchy (the nesting of boxes). During reverse engineering, one often transforms such diagrams in various ways to make them easier to understand. These transformations include edge aggregation, box abstraction (closing a box to hide its contents), and box separation (separating a box from its surrounding system). Such transformations are essential in helping make software architecture diagrams useful in practice. Paper shows how structural manipulations such as these can be specified and automatically carried out in a notation based on Tarski's relational algebra. The operators in this algebra include relational composition, union, subtraction, etc. These operators are supported in a language called Grok. Grok scripts have been used in manipulating the graphs for large scale software systems, such as Linux, to help in program visualization and understanding.
软件体系结构通常被画成一组嵌套的方框图和箭头图。框表示软件系统的组件,而边表示交互。这些图对应于有类型的图,其中有许多边的“类型”或“颜色”,并且其中有一个区分的“包含”关系,表示系统层次结构(框的嵌套)。在逆向工程期间,人们经常以各种方式转换这样的图,使它们更容易理解。这些转换包括边缘聚合、框抽象(关闭一个框以隐藏其内容)和框分离(将一个框与其周围的系统分离)。这样的转换对于帮助软件架构图在实践中变得有用是必不可少的。本文展示了如何在基于Tarski关系代数的符号中指定和自动执行诸如此类的结构操作。该代数中的运算符包括关系复合、并并、减法等。这些操作符在一种名为Grok的语言中得到支持。Grok脚本已用于操作大型软件系统(如Linux)的图形,以帮助程序可视化和理解。
{"title":"Structural manipulations of software architecture using Tarski relational algebra","authors":"R. Holt","doi":"10.1109/WCRE.1998.723191","DOIUrl":"https://doi.org/10.1109/WCRE.1998.723191","url":null,"abstract":"A software architecture is typically drawn as a nested set of box and arrow diagrams. The boxes represent components of the software system and the edges represent interactions These diagrams correspond to typed graphs, in which there are a number of \"types\" or \"colors\" of edges, and in which there is a distinguished \"contain\" relation that represents the system hierarchy (the nesting of boxes). During reverse engineering, one often transforms such diagrams in various ways to make them easier to understand. These transformations include edge aggregation, box abstraction (closing a box to hide its contents), and box separation (separating a box from its surrounding system). Such transformations are essential in helping make software architecture diagrams useful in practice. Paper shows how structural manipulations such as these can be specified and automatically carried out in a notation based on Tarski's relational algebra. The operators in this algebra include relational composition, union, subtraction, etc. These operators are supported in a language called Grok. Grok scripts have been used in manipulating the graphs for large scale software systems, such as Linux, to help in program visualization and understanding.","PeriodicalId":345730,"journal":{"name":"Proceedings Fifth Working Conference on Reverse Engineering (Cat. No.98TB100261)","volume":"25 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"1998-10-12","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"130410992","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}
引用次数: 136
期刊
Proceedings Fifth Working Conference on Reverse Engineering (Cat. No.98TB100261)
全部 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