使用Tarski关系代数的软件架构的结构操作

R. Holt
{"title":"使用Tarski关系代数的软件架构的结构操作","authors":"R. Holt","doi":"10.1109/WCRE.1998.723191","DOIUrl":null,"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.0000,"publicationDate":"1998-10-12","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"136","resultStr":"{\"title\":\"Structural manipulations of software architecture using Tarski relational algebra\",\"authors\":\"R. Holt\",\"doi\":\"10.1109/WCRE.1998.723191\",\"DOIUrl\":null,\"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.0000,\"publicationDate\":\"1998-10-12\",\"publicationTypes\":\"Journal Article\",\"fieldsOfStudy\":null,\"isOpenAccess\":false,\"openAccessPdf\":\"\",\"citationCount\":\"136\",\"resultStr\":null,\"platform\":\"Semanticscholar\",\"paperid\":null,\"PeriodicalName\":\"Proceedings Fifth Working Conference on Reverse Engineering (Cat. No.98TB100261)\",\"FirstCategoryId\":\"1085\",\"ListUrlMain\":\"https://doi.org/10.1109/WCRE.1998.723191\",\"RegionNum\":0,\"RegionCategory\":null,\"ArticlePicture\":[],\"TitleCN\":null,\"AbstractTextCN\":null,\"PMCID\":null,\"EPubDate\":\"\",\"PubModel\":\"\",\"JCR\":\"\",\"JCRName\":\"\",\"Score\":null,\"Total\":0}","platform":"Semanticscholar","paperid":null,"PeriodicalName":"Proceedings Fifth Working Conference on Reverse Engineering (Cat. No.98TB100261)","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1109/WCRE.1998.723191","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 136

摘要

软件体系结构通常被画成一组嵌套的方框图和箭头图。框表示软件系统的组件,而边表示交互。这些图对应于有类型的图,其中有许多边的“类型”或“颜色”,并且其中有一个区分的“包含”关系,表示系统层次结构(框的嵌套)。在逆向工程期间,人们经常以各种方式转换这样的图,使它们更容易理解。这些转换包括边缘聚合、框抽象(关闭一个框以隐藏其内容)和框分离(将一个框与其周围的系统分离)。这样的转换对于帮助软件架构图在实践中变得有用是必不可少的。本文展示了如何在基于Tarski关系代数的符号中指定和自动执行诸如此类的结构操作。该代数中的运算符包括关系复合、并并、减法等。这些操作符在一种名为Grok的语言中得到支持。Grok脚本已用于操作大型软件系统(如Linux)的图形,以帮助程序可视化和理解。
本文章由计算机程序翻译,如有差异,请以英文原文为准。
查看原文
分享 分享
微信好友 朋友圈 QQ好友 复制链接
本刊更多论文
Structural manipulations of software architecture using Tarski relational algebra
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.
求助全文
通过发布文献求助,成功后即可免费获取论文全文。 去求助
来源期刊
自引率
0.00%
发文量
0
期刊最新文献
ROMEO: reverse engineering from OO source code to OMT design Reverse engineering by mining dynamic repositories Managing recovered function and structure of legacy software components Requirements for integrating software architecture and reengineering models: CORUM II Evaluating architectural extractors
×
引用
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