一句话:提出利用搜索式软件工程实现大规模自动化软件演化重构的下一代工具愿景。
尽管自动化开发任务的工具不断进步,重设计与再工程遗留软件等复杂活动仍高度依赖人工且易出错。工业界常见的大规模代码库演化(超过百万行)依然成本高昂、技术风险显著;作者所在组织曾估计仅将某特性与底层硬件平台解耦就需约 14,000 小时开发工作。论文认为软件工程研究长期忽视有效的软件演化工具,现在应借助搜索式软件工程等进展,构建面向工业需求的下一代自动化软件演化工具。为此,文章提出大规模自动化重构的愿景,讨论其目标与研究方向。
Despite progress in providing software engineers with tools that automate an increasing number of development tasks, complex activities like redesigning and reengineering existing software remain resource intensive or are supported by tools that are error prone. Complex, but common tasks in industry, like evolving large codebases (1M+ SLOC) to meet changing needs, still rely on costly manual efforts and incur significant technical risk. In one example, an organization that we work with estimated 14,000 hours of development work alone (excluding integration and testing) to isolate a feature from the underlying hardware platform. These examples are pervasive in industry. Software engineering research has taken providing effective tools for software evolution for granted for far too long. The time is right for research to take advantage of advances in search-based software engineering and create the next generation of industry-relevant automated software evolution tools. This paper lays out a vision for automated refactoring at scale towards this goal.