首页 > 最新文献

International Conference on Software Maintenance, 2003. ICSM 2003. Proceedings.最新文献

英文 中文
On modeling software architecture recovery as graph matching 基于图匹配的软件架构恢复建模
Pub Date : 2003-09-22 DOI: 10.1109/ICSM.2003.1235425
K. Sartipi, K. Kontogiannis
This paper presents a graph matching model for the software architecture recovery problem. Because of their expressiveness, the graphs have been widely used for representing both the software system and its high-level view, known as the conceptual architecture. Modeling the recovery process as graph matching is an attempt to identify a sub-optimal transformation from a pattern graph, representing the high-level view of the system, onto a subgraph of the software system graph. A successful match yields a restructured system that conforms to the given pattern graph. A failed match indicates the points where the system violates specific constraints. The pattern graph generation and the incrementality of the recovery process are the important issues to be addressed. The approach is evaluated through case studies using a prototype toolkit that implements the proposed interactive recovery environment.
针对软件体系结构恢复问题,提出了一种图匹配模型。由于它们的表现力,图被广泛用于表示软件系统及其高级视图,即概念体系结构。将恢复过程建模为图匹配是一种尝试,以确定从表示系统高级视图的模式图到软件系统图的子图的次优转换。成功匹配将生成符合给定模式图的重构系统。失败的匹配指示系统违反特定约束的点。模式图的生成和恢复过程的递增是需要解决的重要问题。通过使用原型工具包的案例研究来评估该方法,该工具包实现了所建议的交互式恢复环境。
{"title":"On modeling software architecture recovery as graph matching","authors":"K. Sartipi, K. Kontogiannis","doi":"10.1109/ICSM.2003.1235425","DOIUrl":"https://doi.org/10.1109/ICSM.2003.1235425","url":null,"abstract":"This paper presents a graph matching model for the software architecture recovery problem. Because of their expressiveness, the graphs have been widely used for representing both the software system and its high-level view, known as the conceptual architecture. Modeling the recovery process as graph matching is an attempt to identify a sub-optimal transformation from a pattern graph, representing the high-level view of the system, onto a subgraph of the software system graph. A successful match yields a restructured system that conforms to the given pattern graph. A failed match indicates the points where the system violates specific constraints. The pattern graph generation and the incrementality of the recovery process are the important issues to be addressed. The approach is evaluated through case studies using a prototype toolkit that implements the proposed interactive recovery environment.","PeriodicalId":141256,"journal":{"name":"International Conference on Software Maintenance, 2003. ICSM 2003. Proceedings.","volume":"25 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2003-09-22","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"128370145","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}
引用次数: 37
A large-scale empirical study of forward and backward static slice size and context sensitivity 前向和后向静态切片大小和上下文敏感性的大规模实证研究
Pub Date : 2003-09-22 DOI: 10.1109/ICSM.2003.1235405
D. Binkley, M. Harman
A large-scale study of 43 C programs totaling just over 1 million lines of code is presented. The study includes the forward and backward static slice on every executable statement. In total 2353598 slices were constructed, with an average slice size being just under 30% of the original program. The results also show that ignoring calling-context led to a 50% increase in average slice size and, in contrast to previous results, a 66-77% increase in computation time (due to the increased size). Though not the principal focus of the study, the results also show an average pace for the slicing engine, on a standard PC, of 3 million lines of code per second thereby providing additional evidence for static slicing's practicability.
对43个C程序进行了大规模研究,总共超过100万行代码。该研究包括每个可执行语句的前向和后向静态切片。总共构建了2353598个切片,平均切片大小略低于原始程序的30%。结果还表明,忽略calling-context导致平均片规模增长了50%,相比以前的结果,计算时间增加66 - 77%(由于增加的大小)。虽然不是研究的主要焦点,但结果也显示了切片引擎的平均速度,在标准PC上,每秒300万行代码,从而为静态切片的实用性提供了额外的证据。
{"title":"A large-scale empirical study of forward and backward static slice size and context sensitivity","authors":"D. Binkley, M. Harman","doi":"10.1109/ICSM.2003.1235405","DOIUrl":"https://doi.org/10.1109/ICSM.2003.1235405","url":null,"abstract":"A large-scale study of 43 C programs totaling just over 1 million lines of code is presented. The study includes the forward and backward static slice on every executable statement. In total 2353598 slices were constructed, with an average slice size being just under 30% of the original program. The results also show that ignoring calling-context led to a 50% increase in average slice size and, in contrast to previous results, a 66-77% increase in computation time (due to the increased size). Though not the principal focus of the study, the results also show an average pace for the slicing engine, on a standard PC, of 3 million lines of code per second thereby providing additional evidence for static slicing's practicability.","PeriodicalId":141256,"journal":{"name":"International Conference on Software Maintenance, 2003. ICSM 2003. Proceedings.","volume":"26 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2003-09-22","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"114120640","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}
引用次数: 79
Mining design patterns from C++ source code 从c++源代码中挖掘设计模式
Pub Date : 2003-09-22 DOI: 10.1109/ICSM.2003.1235436
Zsolt Balanyi, R. Ferenc
Design patterns are micro architectures that have proved to be reliable, easy-to implement and robust. There is a need in science and industry for recognizing these patterns. We present a new method for discovering design patterns in the source code. This method provides a precise specification of how the patterns work by describing basic structural information like inheritance, composition, aggregation and association, and as an indispensable part, by defining call delegation, object creation and operation overriding. We introduce a new XML-based language, the Design Pattern Markup Language (DPML), which provides an easy way for the users to modify pattern descriptions to suit their needs, or even to define their own patterns or just classes in certain relations they wish to find. We tested our method on four open-source systems, and found it effective in discovering design pattern instances.
设计模式是已被证明可靠、易于实现和健壮的微体系结构。科学和工业都需要认识到这些模式。我们提出了一种在源代码中发现设计模式的新方法。此方法通过描述基本的结构信息(如继承、组合、聚合和关联)提供了模式如何工作的精确规范,并作为不可或缺的部分,通过定义调用委托、对象创建和操作重写。我们引入了一种新的基于xml的语言——设计模式标记语言(Design Pattern Markup language, DPML),它为用户提供了一种简单的方法来修改模式描述以满足他们的需要,甚至可以定义他们自己的模式,或者只是定义他们希望找到的某些关系中的类。我们在四个开源系统上测试了我们的方法,发现它在发现设计模式实例方面是有效的。
{"title":"Mining design patterns from C++ source code","authors":"Zsolt Balanyi, R. Ferenc","doi":"10.1109/ICSM.2003.1235436","DOIUrl":"https://doi.org/10.1109/ICSM.2003.1235436","url":null,"abstract":"Design patterns are micro architectures that have proved to be reliable, easy-to implement and robust. There is a need in science and industry for recognizing these patterns. We present a new method for discovering design patterns in the source code. This method provides a precise specification of how the patterns work by describing basic structural information like inheritance, composition, aggregation and association, and as an indispensable part, by defining call delegation, object creation and operation overriding. We introduce a new XML-based language, the Design Pattern Markup Language (DPML), which provides an easy way for the users to modify pattern descriptions to suit their needs, or even to define their own patterns or just classes in certain relations they wish to find. We tested our method on four open-source systems, and found it effective in discovering design pattern instances.","PeriodicalId":141256,"journal":{"name":"International Conference on Software Maintenance, 2003. ICSM 2003. Proceedings.","volume":"47 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2003-09-22","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"120960763","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}
引用次数: 135
Improving software maintenance by using agent-based remote maintenance shell 利用基于代理的远程维护shell改进软件维护
Pub Date : 2003-09-22 DOI: 10.1109/ICSM.2003.1235454
I. Lovrek, G. Jezic, M. Kusek, I. Ljubi, A. Caric, D. Huljenic, S. Desic, O. Labor
The paper deals with a method developed for software maintenance called remote maintenance shell. It allows software installation, modification and verification on the remote target system without suspending its regular operation. The method is based on remote operations performed by mobile agents. The role of remote maintenance shell in software maintenance is elaborated, as well as its architecture. A case study on version replacement of an object-oriented application is included.
本文讨论了一种用于软件维护的方法——远程维护外壳。它允许在不中断其正常运行的情况下在远程目标系统上安装、修改和验证软件。该方法基于由移动代理执行的远程操作。阐述了远程维护外壳在软件维护中的作用及其体系结构。包括一个面向对象应用程序版本替换的案例研究。
{"title":"Improving software maintenance by using agent-based remote maintenance shell","authors":"I. Lovrek, G. Jezic, M. Kusek, I. Ljubi, A. Caric, D. Huljenic, S. Desic, O. Labor","doi":"10.1109/ICSM.2003.1235454","DOIUrl":"https://doi.org/10.1109/ICSM.2003.1235454","url":null,"abstract":"The paper deals with a method developed for software maintenance called remote maintenance shell. It allows software installation, modification and verification on the remote target system without suspending its regular operation. The method is based on remote operations performed by mobile agents. The role of remote maintenance shell in software maintenance is elaborated, as well as its architecture. A case study on version replacement of an object-oriented application is included.","PeriodicalId":141256,"journal":{"name":"International Conference on Software Maintenance, 2003. ICSM 2003. Proceedings.","volume":"4 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2003-09-22","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"127907666","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}
引用次数: 20
Application of neural networks for software quality prediction using object-oriented metrics 神经网络在面向对象度量软件质量预测中的应用
Pub Date : 2003-09-22 DOI: 10.1109/ICSM.2003.1235412
M. Thwin, T. Quah
The paper presents the application of neural networks in software quality estimation using object-oriented metrics. Quality estimation includes estimating reliability as well as maintainability of software. Reliability is typically measured as the number of defects. Maintenance effort can be measured as the number of lines changed per class. In this paper, two kinds of investigation are performed: predicting the number of defects in a class; and predicting the number of lines change per class. Two neural network models are used: they are Ward neural network; and General Regression neural network (GRNN). Object-oriented design metrics concerning inheritance related measures, complexity measures, cohesion measures, coupling measures and memory allocation measures are used as the independent variables. GRNN network model is found to predict more accurately than Ward network model.
本文介绍了神经网络在面向对象的软件质量评价中的应用。质量评估包括软件的可靠性和可维护性评估。可靠性通常以缺陷的数量来衡量。维护工作可以通过每个类更改的行数来衡量。本文进行了两种类型的研究:预测一类缺陷的数量;并预测每类的行数变化。采用了两种神经网络模型:Ward神经网络;广义回归神经网络(GRNN)。采用面向对象的设计度量,包括继承相关度量、复杂性度量、内聚度量、耦合度量和内存分配度量作为自变量。GRNN网络模型的预测精度高于Ward网络模型。
{"title":"Application of neural networks for software quality prediction using object-oriented metrics","authors":"M. Thwin, T. Quah","doi":"10.1109/ICSM.2003.1235412","DOIUrl":"https://doi.org/10.1109/ICSM.2003.1235412","url":null,"abstract":"The paper presents the application of neural networks in software quality estimation using object-oriented metrics. Quality estimation includes estimating reliability as well as maintainability of software. Reliability is typically measured as the number of defects. Maintenance effort can be measured as the number of lines changed per class. In this paper, two kinds of investigation are performed: predicting the number of defects in a class; and predicting the number of lines change per class. Two neural network models are used: they are Ward neural network; and General Regression neural network (GRNN). Object-oriented design metrics concerning inheritance related measures, complexity measures, cohesion measures, coupling measures and memory allocation measures are used as the independent variables. GRNN network model is found to predict more accurately than Ward network model.","PeriodicalId":141256,"journal":{"name":"International Conference on Software Maintenance, 2003. ICSM 2003. Proceedings.","volume":"99 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2003-09-22","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"121942201","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}
引用次数: 328
Managing a multi-billion dollar IT budget 管理数十亿美元的IT预算
Pub Date : 2003-09-22 DOI: 10.1109/ICSM.2003.1235400
A. Kan
Summary form only given. The ING Group is a global financial services institution offering banking, insurance and asset management to 60 million private, corporate and institutional clients world-wide. ING has a market capitalization of 23 billion euros and total assets of over 700 billion euros. Similar to other global financial institutions, ING depends on information technology for delivering its services. Obviously, allocating an IT budget of 2.6 billion euros (2003) requires a sound IT governance. The corporate governance principles of ING assure value creation and protection of stakeholder interests through managing business opportunities and risks. Similarly, IT governance assures the delivery of the expected benefits of IT to help enhance the long term sustainable success of the company. ING's global IT governance structure meshes with the overall corporate governance structure. This helps to align IT strategy with the business goal. The IT Roadmap, as part of the annual planning exercise, is an important instrument to ensure that IT matches the needs of the business. The IT Roadmap outlines the current high level IT issues and the current priorities for IT investments. ING considers IT to be an investment center that drives value creation rather than a typical cost center with a narrow focus on budget controls. The IT and shareholder return project undertaken by IBM in 2001 and taken further by ING and IBM jointly in 2002 sheds a light on how IT helps to increase the shareholder value. One of the key findings of the project is that the best-performing insurers better control their IT maintenance costs and hence create more room for new software development and enhancement. This conclusion matches the belief that striving for better and complete functionality has a favorable effect on software maintenance cost.
只提供摘要形式。荷兰国际集团是一家全球性金融服务机构,为全球6000万私人、企业和机构客户提供银行、保险和资产管理服务。ING的市值为230亿欧元,总资产超过7000亿欧元。与其他全球金融机构类似,荷兰国际集团依靠信息技术提供服务。显然,分配26亿欧元(2003年)的IT预算需要一个健全的IT治理。ING的公司治理原则确保通过管理商业机会和风险来创造价值和保护利益相关者的利益。类似地,IT治理确保交付预期的IT收益,以帮助增强公司的长期可持续成功。ING的全球IT治理结构与整体公司治理结构相结合。这有助于将IT策略与业务目标结合起来。作为年度计划工作的一部分,IT路线图是确保IT符合业务需求的重要工具。IT路线图概述了当前高层次的IT问题和当前IT投资的优先级。ING认为IT是驱动价值创造的投资中心,而不是典型的专注于预算控制的成本中心。IBM在2001年开展的IT和股东回报项目,以及ING和IBM在2002年联合开展的项目,揭示了IT如何帮助增加股东价值。该项目的主要发现之一是,表现最好的保险公司可以更好地控制其IT维护成本,从而为新软件的开发和增强创造更多的空间。这个结论与追求更好和完整的功能对软件维护成本有有利影响的信念相吻合。
{"title":"Managing a multi-billion dollar IT budget","authors":"A. Kan","doi":"10.1109/ICSM.2003.1235400","DOIUrl":"https://doi.org/10.1109/ICSM.2003.1235400","url":null,"abstract":"Summary form only given. The ING Group is a global financial services institution offering banking, insurance and asset management to 60 million private, corporate and institutional clients world-wide. ING has a market capitalization of 23 billion euros and total assets of over 700 billion euros. Similar to other global financial institutions, ING depends on information technology for delivering its services. Obviously, allocating an IT budget of 2.6 billion euros (2003) requires a sound IT governance. The corporate governance principles of ING assure value creation and protection of stakeholder interests through managing business opportunities and risks. Similarly, IT governance assures the delivery of the expected benefits of IT to help enhance the long term sustainable success of the company. ING's global IT governance structure meshes with the overall corporate governance structure. This helps to align IT strategy with the business goal. The IT Roadmap, as part of the annual planning exercise, is an important instrument to ensure that IT matches the needs of the business. The IT Roadmap outlines the current high level IT issues and the current priorities for IT investments. ING considers IT to be an investment center that drives value creation rather than a typical cost center with a narrow focus on budget controls. The IT and shareholder return project undertaken by IBM in 2001 and taken further by ING and IBM jointly in 2002 sheds a light on how IT helps to increase the shareholder value. One of the key findings of the project is that the best-performing insurers better control their IT maintenance costs and hence create more room for new software development and enhancement. This conclusion matches the belief that striving for better and complete functionality has a favorable effect on software maintenance cost.","PeriodicalId":141256,"journal":{"name":"International Conference on Software Maintenance, 2003. ICSM 2003. Proceedings.","volume":"49 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2003-09-22","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"132475189","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}
引用次数: 12
Massively reengineering architectures with automated tools 使用自动化工具进行大规模的架构再造
Pub Date : 2003-09-22 DOI: 10.1109/ICSM.2003.1235457
I. Baxter
Architectures are intended to be structuring principles for applications. However, with legacy systems they are often based on assumptions which have long since changed, and are now an obstacle. We believe that the fluidity of architecture is a function of the tools available for massively modifying systems. In this paper, we briefly sketch a tool, DMS, for making massive changes, and focus on how its fundamental mechanism, program transformation, is being applied to reengineer the architecture of a very large-scale, distributed avionics software system coded in C++.
体系结构旨在成为应用程序的结构化原则。然而,对于遗留系统,它们通常基于早已改变的假设,并且现在是一个障碍。我们认为,建筑的流动性是可用于大规模修改系统的工具的功能。在本文中,我们简要概述了一个用于进行大规模更改的工具DMS,并重点介绍了如何将其基本机制程序转换应用于用c++编写的非常大规模的分布式航空电子软件系统的体系结构重构。
{"title":"Massively reengineering architectures with automated tools","authors":"I. Baxter","doi":"10.1109/ICSM.2003.1235457","DOIUrl":"https://doi.org/10.1109/ICSM.2003.1235457","url":null,"abstract":"Architectures are intended to be structuring principles for applications. However, with legacy systems they are often based on assumptions which have long since changed, and are now an obstacle. We believe that the fluidity of architecture is a function of the tools available for massively modifying systems. In this paper, we briefly sketch a tool, DMS, for making massive changes, and focus on how its fundamental mechanism, program transformation, is being applied to reengineer the architecture of a very large-scale, distributed avionics software system coded in C++.","PeriodicalId":141256,"journal":{"name":"International Conference on Software Maintenance, 2003. ICSM 2003. Proceedings.","volume":"118 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2003-09-22","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"114344284","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 0
Library miniaturization using static and dynamic information 使用静态和动态信息的图书馆小型化
Pub Date : 2003-09-22 DOI: 10.1109/ICSM.2003.1235426
G. Antoniol, M. D. Penta
Moving to smaller libraries can be considered as a relevant task when porting software systems to limited-resource devices (e.g., hand-helds). Library miniaturization will be particularly effective if based on both dynamic (keeping into account dependencies exploited during application execution in a given user profile) and static (keeping into account all possible dependencies) information. This paper presents distributed software architecture, based on Web services, to collect dynamic information at run-time, and an approach for miniaturization of libraries, exploiting both dynamic and static information with the aim of reducing the memory requirements of executables. New, smaller libraries are identified via hierarchical clustering and genetic algorithms; clustering produces a first initial solution, then optimized by multi-objective genetic algorithms. The approach has been applied to medium size open source software systems such as Samba and MySQL, allowing to effectively produce smaller, loosely coupled libraries, and to reduce the memory requirements of each application.
在将软件系统移植到资源有限的设备(例如,手持设备)时,迁移到较小的库可以被视为一项相关任务。如果同时基于动态(考虑在给定用户配置文件中应用程序执行期间利用的依赖关系)和静态(考虑所有可能的依赖关系)信息,库小型化将特别有效。本文提出了一种基于Web服务的分布式软件体系结构,用于在运行时收集动态信息,以及一种利用动态和静态信息的库小型化方法,目的是减少可执行文件的内存需求。通过分层聚类和遗传算法确定新的、较小的库;聚类产生第一个初始解,然后通过多目标遗传算法进行优化。该方法已应用于中等规模的开源软件系统,如Samba和MySQL,允许有效地生成更小、松耦合的库,并减少每个应用程序的内存需求。
{"title":"Library miniaturization using static and dynamic information","authors":"G. Antoniol, M. D. Penta","doi":"10.1109/ICSM.2003.1235426","DOIUrl":"https://doi.org/10.1109/ICSM.2003.1235426","url":null,"abstract":"Moving to smaller libraries can be considered as a relevant task when porting software systems to limited-resource devices (e.g., hand-helds). Library miniaturization will be particularly effective if based on both dynamic (keeping into account dependencies exploited during application execution in a given user profile) and static (keeping into account all possible dependencies) information. This paper presents distributed software architecture, based on Web services, to collect dynamic information at run-time, and an approach for miniaturization of libraries, exploiting both dynamic and static information with the aim of reducing the memory requirements of executables. New, smaller libraries are identified via hierarchical clustering and genetic algorithms; clustering produces a first initial solution, then optimized by multi-objective genetic algorithms. The approach has been applied to medium size open source software systems such as Samba and MySQL, allowing to effectively produce smaller, loosely coupled libraries, and to reduce the memory requirements of each application.","PeriodicalId":141256,"journal":{"name":"International Conference on Software Maintenance, 2003. ICSM 2003. Proceedings.","volume":"45 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2003-09-22","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"125298415","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}
引用次数: 20
Difference tools for analysis and design documents 分析和设计文档的不同工具
Pub Date : 2003-09-22 DOI: 10.1109/ICSM.2003.1235402
Dirk Ohst, M. Welle, U. Kelter
This paper presents a concept and tools for the detection and visualization of differences between versions of graphical software documents such as ER, class or object diagrams, state charts, etc. We first analyze the problems which occur when comparing graphical documents and displaying their similarities and differences. Our basic approach is to use a unified document which contains the common and specific parts of both base documents with the specific parts being highlighted. The central problem is how to reduce the amount of highlighted elements and enable the developer to have a certain amount of control over the changes be selectively highlighted. With regard to tool construction, we assume that software documents are modeled in a fine-grained way, that they are stored as syntax trees in XML (eXtensible Markup Language) files or a repository system and that a version management system is used. By using the features of the data model and the version model we are able to detect and visualize differences between diagram versions, including structural changes (e.g. shifting of a method from one class to another). We further exploit information about the version history delivered by the underlying version management system by highlighting only differences based on structural or logical changes.
本文提出了一个概念和工具,用于检测和可视化图形软件文档(如ER、类或对象图、状态图等)版本之间的差异。我们首先分析了在比较图形文档时出现的问题,并展示了它们的异同。我们的基本方法是使用一个统一的文档,其中包含两个基本文档的公共部分和特定部分,并突出显示特定部分。核心问题是如何减少突出显示元素的数量,并使开发人员能够对选择性突出显示的更改有一定的控制。关于工具构造,我们假设软件文档以细粒度的方式建模,它们以XML(可扩展标记语言)文件或存储库系统中的语法树的形式存储,并且使用了版本管理系统。通过使用数据模型和版本模型的特性,我们能够检测和可视化图表版本之间的差异,包括结构变化(例如,将方法从一个类转移到另一个类)。我们进一步利用底层版本管理系统提供的版本历史信息,只突出显示基于结构或逻辑更改的差异。
{"title":"Difference tools for analysis and design documents","authors":"Dirk Ohst, M. Welle, U. Kelter","doi":"10.1109/ICSM.2003.1235402","DOIUrl":"https://doi.org/10.1109/ICSM.2003.1235402","url":null,"abstract":"This paper presents a concept and tools for the detection and visualization of differences between versions of graphical software documents such as ER, class or object diagrams, state charts, etc. We first analyze the problems which occur when comparing graphical documents and displaying their similarities and differences. Our basic approach is to use a unified document which contains the common and specific parts of both base documents with the specific parts being highlighted. The central problem is how to reduce the amount of highlighted elements and enable the developer to have a certain amount of control over the changes be selectively highlighted. With regard to tool construction, we assume that software documents are modeled in a fine-grained way, that they are stored as syntax trees in XML (eXtensible Markup Language) files or a repository system and that a version management system is used. By using the features of the data model and the version model we are able to detect and visualize differences between diagram versions, including structural changes (e.g. shifting of a method from one class to another). We further exploit information about the version history delivered by the underlying version management system by highlighting only differences based on structural or logical changes.","PeriodicalId":141256,"journal":{"name":"International Conference on Software Maintenance, 2003. ICSM 2003. Proceedings.","volume":"23 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2003-09-22","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"121419151","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}
引用次数: 44
A taxonomy and an initial empirical study of bad smells in code 代码中不良气味的分类和初步经验研究
Pub Date : 2003-09-22 DOI: 10.1109/ICSM.2003.1235447
M. Mäntylä, Jari Vanhanen, C. Lassenius
This paper presents research in progress, as well as tentative findings related to the empirical study of so called bad code smells. We present a taxonomy that categorizes similar bad smells. We believe that taxonomy makes the smells more understandable and recognizes the relationships between smells. Additionally, we present our initial findings from an empirical study of the use of the smells for evaluating code quality in a small Finnish software product company. Our findings indicate that the taxonomy for the smells could help explain the identified correlations between the subjective evaluations of the existence of the smells.
本文介绍了正在进行的研究,以及与所谓的不良代码气味的实证研究相关的初步发现。我们提出了一种分类法,对类似的难闻气味进行分类。我们相信分类学使气味更容易理解,并认识到气味之间的关系。此外,我们还展示了我们在芬兰一家小型软件产品公司中使用气味来评估代码质量的实证研究的初步发现。我们的研究结果表明,气味的分类可以帮助解释对气味存在的主观评价之间已确定的相关性。
{"title":"A taxonomy and an initial empirical study of bad smells in code","authors":"M. Mäntylä, Jari Vanhanen, C. Lassenius","doi":"10.1109/ICSM.2003.1235447","DOIUrl":"https://doi.org/10.1109/ICSM.2003.1235447","url":null,"abstract":"This paper presents research in progress, as well as tentative findings related to the empirical study of so called bad code smells. We present a taxonomy that categorizes similar bad smells. We believe that taxonomy makes the smells more understandable and recognizes the relationships between smells. Additionally, we present our initial findings from an empirical study of the use of the smells for evaluating code quality in a small Finnish software product company. Our findings indicate that the taxonomy for the smells could help explain the identified correlations between the subjective evaluations of the existence of the smells.","PeriodicalId":141256,"journal":{"name":"International Conference on Software Maintenance, 2003. ICSM 2003. Proceedings.","volume":"1 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2003-09-22","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"130727291","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}
引用次数: 205
期刊
International Conference on Software Maintenance, 2003. ICSM 2003. Proceedings.
全部 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