首页 > 最新文献

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

英文 中文
Automated support for framework-based software 对基于框架的软件的自动化支持
Pub Date : 2003-10-07 DOI: 10.1109/ICSM.2003.1235416
T. Tourwé, T. Mens
In this paper, we show how elaborate support for framework-based software evolution can be provided based on explicit documentation of the hot spots of object-oriented application frameworks. Such support includes high-level transformations that guide a developer when instantiating applications from a framework by propagating the necessary changes, as well as application upgrading facilities based on these transformations. The approach relies on active declarative documentation of the design and evolution of the framework's hot spots, by means of metapatterns and their associated transformations.
在本文中,我们展示了如何基于面向对象应用程序框架的热点的明确文档来提供对基于框架的软件进化的详细支持。这种支持包括高级转换,这些转换通过传播必要的更改来指导开发人员从框架实例化应用程序,以及基于这些转换的应用程序升级工具。该方法依赖于通过元模式及其相关转换对框架热点的设计和发展进行的主动声明性文档。
{"title":"Automated support for framework-based software","authors":"T. Tourwé, T. Mens","doi":"10.1109/ICSM.2003.1235416","DOIUrl":"https://doi.org/10.1109/ICSM.2003.1235416","url":null,"abstract":"In this paper, we show how elaborate support for framework-based software evolution can be provided based on explicit documentation of the hot spots of object-oriented application frameworks. Such support includes high-level transformations that guide a developer when instantiating applications from a framework by propagating the necessary changes, as well as application upgrading facilities based on these transformations. The approach relies on active declarative documentation of the design and evolution of the framework's hot spots, by means of metapatterns and their associated transformations.","PeriodicalId":141256,"journal":{"name":"International Conference on Software Maintenance, 2003. ICSM 2003. Proceedings.","volume":"15 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2003-10-07","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"127791567","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
Testing with respect to concerns [software maintenance] 与关注点相关的测试[软件维护]
Pub Date : 2003-10-07 DOI: 10.1109/ICSM.2003.1235406
Amie L. Souter, D. Shepherd, L. Pollock
Often the code regions that are assigned for a maintenance task do not follow the modularization of the original application program, but instead include parts of code from many different units scattered throughout the application. In this paper, we investigate an approach to testing which we call concern-based testing, which leverages existing tools to help software maintainers identify the relevant code for their assigned task, their concern. The main contribution is a demonstration of the possible savings in test suite execution overhead and the increased precision in coverage information that can be obtained for a software maintainer if testing tasks are performed with respect to concerns. Based on a concern graph representation of the concern, a framework for guiding selective instrumentation for scalable coverage analysis is also presented.
通常,为维护任务分配的代码区域不遵循原始应用程序的模块化,而是包含分散在整个应用程序中的许多不同单元的代码部分。在本文中,我们研究了一种测试方法,我们称之为基于关注点的测试,它利用现有的工具来帮助软件维护者识别他们分配的任务和关注点的相关代码。主要的贡献是演示了测试套件执行开销的可能节省,以及如果根据关注点执行测试任务,软件维护者可以获得的覆盖信息的精确度的增加。在关注图表示的基础上,提出了一个指导可扩展覆盖率分析的选择工具的框架。
{"title":"Testing with respect to concerns [software maintenance]","authors":"Amie L. Souter, D. Shepherd, L. Pollock","doi":"10.1109/ICSM.2003.1235406","DOIUrl":"https://doi.org/10.1109/ICSM.2003.1235406","url":null,"abstract":"Often the code regions that are assigned for a maintenance task do not follow the modularization of the original application program, but instead include parts of code from many different units scattered throughout the application. In this paper, we investigate an approach to testing which we call concern-based testing, which leverages existing tools to help software maintainers identify the relevant code for their assigned task, their concern. The main contribution is a demonstration of the possible savings in test suite execution overhead and the increased precision in coverage information that can be obtained for a software maintainer if testing tasks are performed with respect to concerns. Based on a concern graph representation of the concern, a framework for guiding selective instrumentation for scalable coverage analysis is also presented.","PeriodicalId":141256,"journal":{"name":"International Conference on Software Maintenance, 2003. ICSM 2003. Proceedings.","volume":"19 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2003-10-07","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"129276394","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
Populating a Release History Database from version control and bug tracking systems 从版本控制和错误跟踪系统中填充发布历史数据库
Pub Date : 2003-09-22 DOI: 10.1109/ICSM.2003.1235403
M. Fischer, M. Pinzger, H. Gall
Version control and bug tracking systems contain large amounts of historical information that can give deep insight into the evolution of a software project. Unfortunately, these systems provide only insufficient support for a detailed analysis of software evolution aspects. We address this problem and introduce an approach for populating a release history database that combines version data with bug tracking data and adds missing data not covered by version control systems such as merge points. Then simple queries can be applied to the structured data to obtain meaningful views showing the evolution of a software project. Such views enable more accurate reasoning of evolutionary aspects and facilitate the anticipation of software evolution. We demonstrate our approach on the large open source project Mozilla that offers great opportunities to compare results and validate our approach.
版本控制和缺陷跟踪系统包含大量的历史信息,这些信息可以深入了解软件项目的发展。不幸的是,这些系统仅为软件演化方面的详细分析提供了不足的支持。我们解决了这个问题,并引入了一种填充发布历史数据库的方法,该数据库将版本数据与错误跟踪数据结合起来,并添加了版本控制系统(如合并点)未涵盖的缺失数据。然后,可以将简单的查询应用于结构化数据,以获得显示软件项目演变的有意义的视图。这样的视图能够更准确地推理进化方面,并促进对软件进化的预测。我们在大型开源项目Mozilla上演示了我们的方法,该项目为比较结果和验证我们的方法提供了很好的机会。
{"title":"Populating a Release History Database from version control and bug tracking systems","authors":"M. Fischer, M. Pinzger, H. Gall","doi":"10.1109/ICSM.2003.1235403","DOIUrl":"https://doi.org/10.1109/ICSM.2003.1235403","url":null,"abstract":"Version control and bug tracking systems contain large amounts of historical information that can give deep insight into the evolution of a software project. Unfortunately, these systems provide only insufficient support for a detailed analysis of software evolution aspects. We address this problem and introduce an approach for populating a release history database that combines version data with bug tracking data and adds missing data not covered by version control systems such as merge points. Then simple queries can be applied to the structured data to obtain meaningful views showing the evolution of a software project. Such views enable more accurate reasoning of evolutionary aspects and facilitate the anticipation of software evolution. We demonstrate our approach on the large open source project Mozilla that offers great opportunities to compare results and validate our approach.","PeriodicalId":141256,"journal":{"name":"International Conference on Software Maintenance, 2003. ICSM 2003. Proceedings.","volume":"10 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":"126818297","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}
引用次数: 585
The case for maintaining assurance cases 维护保证案例的案例
Pub Date : 2003-09-22 DOI: 10.1109/ICSM.2003.1235413
Charles Howell
When we build and maintain safety-, mission-, or security-critical systems, we are usually constrained by regulations and acquisition guidelines that requires us to provide a documented body of evidence that the system satisfies specified critical properties. In other words, we must construct an "assurance case" to convince the purchaser or user of the system's suitability or quality. However, in building such high-quality software and balancing many objectives, it has become painfully clear that the resulting software is brittle: small changes in the software itself; the hardware and software environment; or in its operational use, can have unexpected and significant (unwanted) effects. Unfortunately, assurance cases for software are often even more brittle than the software itself. This presentation will address the challenges we confront in preserving the quality of the assurance cases as we maintain the quality of the associated software. It is critical that we make progress in addressing these challenges as software continues to become a fundamental enabling technology for 21st-century society.
当我们构建和维护安全、任务或安全关键系统时,我们通常受到法规和获取指导方针的约束,这些指导方针要求我们提供系统满足指定关键属性的文档化证据。换句话说,我们必须构建一个“保证案例”来说服购买者或用户系统的适用性或质量。然而,在构建如此高质量的软件并平衡许多目标的过程中,很明显,最终的软件是脆弱的:软件本身的微小变化;硬件和软件环境;或者在其操作使用中,可能会产生意想不到的和显著的(不希望的)效果。不幸的是,软件的保证案例通常比软件本身更加脆弱。本演讲将讨论我们在保持相关软件质量的同时,在保持保证案例质量方面所面临的挑战。随着软件继续成为21世纪社会的基本支持技术,我们在应对这些挑战方面取得进展至关重要。
{"title":"The case for maintaining assurance cases","authors":"Charles Howell","doi":"10.1109/ICSM.2003.1235413","DOIUrl":"https://doi.org/10.1109/ICSM.2003.1235413","url":null,"abstract":"When we build and maintain safety-, mission-, or security-critical systems, we are usually constrained by regulations and acquisition guidelines that requires us to provide a documented body of evidence that the system satisfies specified critical properties. In other words, we must construct an \"assurance case\" to convince the purchaser or user of the system's suitability or quality. However, in building such high-quality software and balancing many objectives, it has become painfully clear that the resulting software is brittle: small changes in the software itself; the hardware and software environment; or in its operational use, can have unexpected and significant (unwanted) effects. Unfortunately, assurance cases for software are often even more brittle than the software itself. This presentation will address the challenges we confront in preserving the quality of the assurance cases as we maintain the quality of the associated software. It is critical that we make progress in addressing these challenges as software continues to become a fundamental enabling technology for 21st-century society.","PeriodicalId":141256,"journal":{"name":"International Conference on Software Maintenance, 2003. ICSM 2003. Proceedings.","volume":"33 2","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2003-09-22","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"114023996","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
Characterizing the 'security vulnerability likelihood' of software functions 描述软件功能的“安全漏洞可能性”
Pub Date : 2003-09-22 DOI: 10.1109/ICSM.2003.1235429
D. DaCosta, C. Dahn, S. Mancoridis, V. Prevelakis
Software maintainers and auditors would benefit from a tool to help them focus their attention on functions that are likely to be the source of security vulnerabilities. However, the existence of such a tool is predicated on the ability to characterize a function's 'security vulnerability likelihood'. Our hypothesis is that functions near a source of input are most likely to contain security vulnerability. These functions should be a small percentage of the total number of functions in the system. To validate this hypothesis, we performed an experiment involving thirty one vulnerabilities in thirty open source systems. This paper describes the experiment, its outcome, and the tools used to conduct it. It also describes the FLF (front line functions) finder, which is a tool that was developed using knowledge gathered from the outcome of the experiment. This tool automates the detection of high-risk functions. To demonstrate the effectiveness of the FLF finder, three open source applications with known vulnerabilities were tested. In addition to this test, a case study was performed on the privilege separation code in the OpenSSH server daemon.
软件维护人员和审计人员将受益于一种工具,它可以帮助他们将注意力集中在可能成为安全漏洞来源的功能上。然而,这种工具的存在是基于描述功能的“安全漏洞可能性”的能力。我们的假设是,靠近输入源的函数最有可能包含安全漏洞。这些函数应该只占系统中函数总数的一小部分。为了验证这个假设,我们在30个开源系统中进行了一个涉及31个漏洞的实验。本文描述了该实验,其结果,以及用于进行实验的工具。它还描述了FLF(前线功能)查找器,这是一种使用从实验结果中收集的知识开发的工具。该工具可以自动检测高风险功能。为了证明FLF查找器的有效性,测试了三个具有已知漏洞的开源应用程序。除了这个测试之外,还对OpenSSH服务器守护进程中的特权分离代码执行了一个案例研究。
{"title":"Characterizing the 'security vulnerability likelihood' of software functions","authors":"D. DaCosta, C. Dahn, S. Mancoridis, V. Prevelakis","doi":"10.1109/ICSM.2003.1235429","DOIUrl":"https://doi.org/10.1109/ICSM.2003.1235429","url":null,"abstract":"Software maintainers and auditors would benefit from a tool to help them focus their attention on functions that are likely to be the source of security vulnerabilities. However, the existence of such a tool is predicated on the ability to characterize a function's 'security vulnerability likelihood'. Our hypothesis is that functions near a source of input are most likely to contain security vulnerability. These functions should be a small percentage of the total number of functions in the system. To validate this hypothesis, we performed an experiment involving thirty one vulnerabilities in thirty open source systems. This paper describes the experiment, its outcome, and the tools used to conduct it. It also describes the FLF (front line functions) finder, which is a tool that was developed using knowledge gathered from the outcome of the experiment. This tool automates the detection of high-risk functions. To demonstrate the effectiveness of the FLF finder, three open source applications with known vulnerabilities were tested. In addition to this test, a case study was performed on the privilege separation code in the OpenSSH server daemon.","PeriodicalId":141256,"journal":{"name":"International Conference on Software Maintenance, 2003. ICSM 2003. Proceedings.","volume":"33 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":"131479434","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}
引用次数: 42
Context-driven testing of object-oriented systems 面向对象系统的上下文驱动测试
Pub Date : 2003-09-22 DOI: 10.1109/ICSM.2003.1235431
Amie L. Souter
Many different testing techniques have been proposed by researchers, but essentially only two main testing philosophies exist, black box and white box. There exist a number of different testing methods for structural testing of procedural languages. However, the features of object-oriented languages are not addressed by such techniques. The article explores a new structural testing technique for object-oriented systems by developing a testing methodology based on object manipulations and driven by the context of the program under test.
研究人员提出了许多不同的测试技术,但基本上只有两种主要的测试理念存在,黑盒和白盒。对于过程性语言的结构化测试,存在着许多不同的测试方法。然而,这种技术并没有解决面向对象语言的特性。本文通过开发一种基于对象操作并由被测程序的上下文驱动的测试方法,探索了面向对象系统的一种新的结构测试技术。
{"title":"Context-driven testing of object-oriented systems","authors":"Amie L. Souter","doi":"10.1109/ICSM.2003.1235431","DOIUrl":"https://doi.org/10.1109/ICSM.2003.1235431","url":null,"abstract":"Many different testing techniques have been proposed by researchers, but essentially only two main testing philosophies exist, black box and white box. There exist a number of different testing methods for structural testing of procedural languages. However, the features of object-oriented languages are not addressed by such techniques. The article explores a new structural testing technique for object-oriented systems by developing a testing methodology based on object manipulations and driven by the context of the program under test.","PeriodicalId":141256,"journal":{"name":"International Conference on Software Maintenance, 2003. ICSM 2003. Proceedings.","volume":"9 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":"124721263","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 2
QuaTrace: a tool environment for (semi-) automatic impact analysis based on traces QuaTrace:基于轨迹的(半)自动化冲击分析工具环境
Pub Date : 2003-09-22 DOI: 10.1109/ICSM.2003.1235427
A. V. Knethen, M. Grund
Cost estimation of changes to software systems is often inaccurate and implementation of changes is time consuming, cost intensive, and error prone. One reason for these problems is that relationships between documentation entities (e.g., between different requirements) are not documented at all or only incompletely. In this paper, we describe a constructive approach to support later changes to software systems. Our approach consists of a traceability technique and a supporting tool environment. The tracing approach describes which traces should be established in which way. The proposed tool environment supports the application of the guidelines in a concrete development context. The tool environment integrates two existing tools: a requirements management tool (i.e., RequisitePro) and a CASE tool (i.e., Rhapsody). Our approach allows traces to be established, analyzed, and maintained effectively and efficiently.
对软件系统更改的成本估计通常是不准确的,并且更改的实现是耗时的,成本密集的,并且容易出错。产生这些问题的一个原因是文档实体之间的关系(例如,不同需求之间的关系)根本没有文档化,或者只是不完整地文档化。在本文中,我们描述了一种建设性的方法来支持软件系统的后期更改。我们的方法由跟踪技术和支持工具环境组成。跟踪方法描述了应该以哪种方式建立哪些跟踪。建议的工具环境支持在具体的开发环境中应用指南。工具环境集成了两个现有的工具:一个需求管理工具(例如RequisitePro)和一个CASE工具(例如Rhapsody)。我们的方法可以有效地建立、分析和维护痕迹。
{"title":"QuaTrace: a tool environment for (semi-) automatic impact analysis based on traces","authors":"A. V. Knethen, M. Grund","doi":"10.1109/ICSM.2003.1235427","DOIUrl":"https://doi.org/10.1109/ICSM.2003.1235427","url":null,"abstract":"Cost estimation of changes to software systems is often inaccurate and implementation of changes is time consuming, cost intensive, and error prone. One reason for these problems is that relationships between documentation entities (e.g., between different requirements) are not documented at all or only incompletely. In this paper, we describe a constructive approach to support later changes to software systems. Our approach consists of a traceability technique and a supporting tool environment. The tracing approach describes which traces should be established in which way. The proposed tool environment supports the application of the guidelines in a concrete development context. The tool environment integrates two existing tools: a requirements management tool (i.e., RequisitePro) and a CASE tool (i.e., Rhapsody). Our approach allows traces to be established, analyzed, and maintained effectively and efficiently.","PeriodicalId":141256,"journal":{"name":"International Conference on Software Maintenance, 2003. ICSM 2003. Proceedings.","volume":"16 3 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":"132989243","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
Models for the evolution of OS projects OS项目发展的模型
Pub Date : 2003-09-22 DOI: 10.1109/ICSM.2003.1235407
A. Capiluppi
Software evolution and maintenance is largely based on data gathered through years of experience: understanding and improving software is often a matter of how much data is available. Open source software offers the opportunity to analyze closely all the phases in the evolution of a project. What's more, data regarding its evolution is generally available for inspections. Based on simply code analyses, lots of questions about its efficiencies can't be resolved. It would be necessary to study the process from the inside, understanding who or what drove what improvement and so on. Still a quantitative analysis gives several insights about how much code is created and evolved by developers. This study takes a sample of 12 open source projects and gives some statistics to analyze their evolution. The purpose is here to compare what is commonly know in software evolution in traditional environments, and what happens instead in open environments.
软件的发展和维护很大程度上是基于通过多年的经验收集的数据:理解和改进软件通常是一个有多少数据可用的问题。开源软件提供了密切分析项目发展的所有阶段的机会。更重要的是,有关其演变的数据通常可供检查。基于简单的代码分析,许多关于其效率的问题无法解决。有必要从内部研究流程,了解是谁或什么推动了哪些改进等等。定量分析仍然提供了一些关于开发人员创建和改进了多少代码的见解。本研究选取了12个开源项目作为样本,并给出了一些统计数据来分析它们的发展。这里的目的是比较在传统环境中软件发展的一般情况,以及在开放环境中发生的情况。
{"title":"Models for the evolution of OS projects","authors":"A. Capiluppi","doi":"10.1109/ICSM.2003.1235407","DOIUrl":"https://doi.org/10.1109/ICSM.2003.1235407","url":null,"abstract":"Software evolution and maintenance is largely based on data gathered through years of experience: understanding and improving software is often a matter of how much data is available. Open source software offers the opportunity to analyze closely all the phases in the evolution of a project. What's more, data regarding its evolution is generally available for inspections. Based on simply code analyses, lots of questions about its efficiencies can't be resolved. It would be necessary to study the process from the inside, understanding who or what drove what improvement and so on. Still a quantitative analysis gives several insights about how much code is created and evolved by developers. This study takes a sample of 12 open source projects and gives some statistics to analyze their evolution. The purpose is here to compare what is commonly know in software evolution in traditional environments, and what happens instead in open environments.","PeriodicalId":141256,"journal":{"name":"International Conference on Software Maintenance, 2003. ICSM 2003. Proceedings.","volume":"62 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":"126621267","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}
引用次数: 64
A heuristic approach to solving the software clustering problem 一种解决软件聚类问题的启发式方法
Pub Date : 2003-09-22 DOI: 10.1109/ICSM.2003.1235432
B. Mitchell
This paper provides an overview of the author's Ph.D. thesis (2002). The primary contribution of this research involved developing techniques to extract architectural information about a system directly from its source code. To accomplish this objective a series of software clustering algorithms were developed. These algorithms use metaheuristic search techniques to partition a directed graph generated from the entities and relations in the source code into subsystems. Determining the optimal solution to this problem was shown to be NP-hard, thus significant emphasis was placed on finding solutions that were regarded as "good enough" quickly. Several evaluation techniques were developed to gauge solution quality, and all of the software clustering tools created to support this work was made available for download over the Internet.
本文概述了作者的博士论文(2002年)。这项研究的主要贡献包括开发直接从源代码中提取系统架构信息的技术。为了实现这一目标,开发了一系列软件聚类算法。这些算法使用元启发式搜索技术将源代码中的实体和关系生成的有向图划分为子系统。确定这个问题的最佳解决方案是np困难的,因此重点放在迅速找到被认为“足够好”的解决方案上。开发了几种评估技术来衡量解决方案的质量,并且为支持这项工作而创建的所有软件集群工具都可以通过Internet下载。
{"title":"A heuristic approach to solving the software clustering problem","authors":"B. Mitchell","doi":"10.1109/ICSM.2003.1235432","DOIUrl":"https://doi.org/10.1109/ICSM.2003.1235432","url":null,"abstract":"This paper provides an overview of the author's Ph.D. thesis (2002). The primary contribution of this research involved developing techniques to extract architectural information about a system directly from its source code. To accomplish this objective a series of software clustering algorithms were developed. These algorithms use metaheuristic search techniques to partition a directed graph generated from the entities and relations in the source code into subsystems. Determining the optimal solution to this problem was shown to be NP-hard, thus significant emphasis was placed on finding solutions that were regarded as \"good enough\" quickly. Several evaluation techniques were developed to gauge solution quality, and all of the software clustering tools created to support this work was made available for download over the Internet.","PeriodicalId":141256,"journal":{"name":"International Conference on Software Maintenance, 2003. ICSM 2003. Proceedings.","volume":"16 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":"133761603","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
Service learning in software engineering and maintenance 软件工程和维护中的服务学习
Pub Date : 2003-09-22 DOI: 10.1109/ICSM.2003.1235440
P. Linos, C. Bailey-Kellogg
We discuss a service-learning program called EPICS (engineering projects in community service). More specifically, we describe an effort to incorporate EPICS within computer science and computer engineering curricula at Purdue University and Butler University, respectively.
我们讨论了一个叫做EPICS(社区服务工程项目)的服务学习项目。更具体地说,我们描述了在普渡大学和巴特勒大学分别将EPICS纳入计算机科学和计算机工程课程的努力。
{"title":"Service learning in software engineering and maintenance","authors":"P. Linos, C. Bailey-Kellogg","doi":"10.1109/ICSM.2003.1235440","DOIUrl":"https://doi.org/10.1109/ICSM.2003.1235440","url":null,"abstract":"We discuss a service-learning program called EPICS (engineering projects in community service). More specifically, we describe an effort to incorporate EPICS within computer science and computer engineering curricula at Purdue University and Butler University, respectively.","PeriodicalId":141256,"journal":{"name":"International Conference on Software Maintenance, 2003. ICSM 2003. Proceedings.","volume":"41 9 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":"122872228","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
期刊
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学术文献互助群
群 号:481959085
Book学术
文献互助 智能选刊 最新文献 互助须知 联系我们:info@booksci.cn
Book学术提供免费学术资源搜索服务,方便国内外学者检索中英文文献。致力于提供最便捷和优质的服务体验。
Copyright © 2023 Book学术 All rights reserved.
ghs 京公网安备 11010802042870号 京ICP备2023020795号-1