CAREER: Differential Types and Declarative Hypothesis Testing for Software Evolution
CAREER: Differential Types and Declarative Hypothesis Testing for Software Evolution
批准号:
1629186
负责人:
Iulian Neamtiu
金额:
$33.92万
依托单位国家:
美国
项目类别:
Continuing Grant
财政年份:
2015
资助国家:
美国
项目状态:
已结题
起止时间:
2015-09-01 至 2019-03-31
中文摘要
软件在第一个版本发布后还会继续发展。在演进过程中对源代码所做的更改可能没有预期的语义(修复错误,添加功能),这对软件生产者和软件消费者都有负面影响,并且具有很高的经济成本。更一般地说,软件进化过程并没有被很好地理解。为了纠正这种情况,本工作将以两种方式使用从分析软件历史中获得的信息。首先,开发一种名为“差异类型”的基于类型系统的方法,这种方法可以在进行更改之前和之后对源代码的属性进行推理,并在开发时揭示源代码更改的语义。其次,为陈述性假设检验构建一个框架,使软件进化和软件工程中进行实证研究的过程自动化和简化。这项工作的跨学科基础将促进两个主要社区,编程语言和软件工程之间的互动。这项研究的结果将有助于更好地理解软件是如何演化的,并有助于改进软件演化过程。通过明确软件更改的语义,并在部署软件之前揭示某些类型的错误,可以减少软件错误和不正确软件更新的发生率和相关成本。该项目将改变研究人员进行实证软件进化研究的方式,将重点从如何测试假设转移到正确的假设是什么。这些贡献将被公开,这不仅有利于研究社区,也有利于软件开发社区。来自这项工作的想法将被纳入教育,以便明天的毕业生更好地准备应对软件进化的挑战。
英文摘要
Software continues to evolve long after the first version is released. Changes made to source code in the course of evolution might not have the intended semantics (fix bugs, add features), which negatively impacts both software producers and software consumers, and has high economic costs. More generally, the software evolution process is not very well understood. To remedy this situation, this work will use information derived from analyzing software history in two ways. First, to develop a type systems-based approach named differential typing, that enables reasoning about the properties of source code before and after a change has been made, and reveals the semantics of source code changes at development time. Second, to construct a framework for declarative hypothesis testing that automates and simplifies the process of conducting empirical studies in software evolution, and software engineering in general.The interdisciplinary foundation of this work will catalyze interaction between two primary communities, programming languages and software engineering. The results of this research will lead to a better understanding of how software evolves, and to improvements in the software evolution process. By making the semantics of software changes explicit and revealing certain kinds of errors before software is deployed, the incidence of, and costs associated with, software bugs and incorrect software updates are reduced. The project will transform the way researchers conduct empirical software evolution studies by shifting the focus from how hypotheses are tested to what the right hypotheses are. The contributions will be made publicly available, which will benefit not only the research community, but also the software development community. Ideas from this work will be incorporated into education, so that tomorrow's graduates are better prepared to tackle software evolution challenges.
期刊论文(0)
专著(0)
科研奖励(0)
会议论文
Collaborative Research: SHF: Medium: Precise Static Analysis of Event-based Systems
-
批准号:2106710
-
项目类别:Standard Grant
-
资助金额:$60.0万
-
财政年份:2021
-
负责人:Iulian Neamtiu
-
依托单位:
SHF: Small: Program Analysis for Dependable Clustering
-
批准号:2007730
-
项目类别:Standard Grant
-
资助金额:$40.0万
-
财政年份:2020
-
负责人:Iulian Neamtiu
-
依托单位:
TWC: Small: Collaborative: Improving Android Security with Dynamic Slicing
-
批准号:1617584
-
项目类别:Standard Grant
-
资助金额:$24.98万
-
财政年份:2016
-
负责人:Iulian Neamtiu
-
依托单位:
TC: Medium: Collaborative Research: Program Analysis for Smartphone Application Security
-
批准号:1630037
-
项目类别:Standard Grant
-
资助金额:$4.64万
-
财政年份:2015
-
负责人:Iulian Neamtiu
-
依托单位:
PLDI 2013 Travel Support
-
批准号:1329263
-
项目类别:Standard Grant
-
资助金额:$1.2万
-
财政年份:2013
-
负责人:Iulian Neamtiu
-
依托单位:
PLDI'12 and Trends in Concurrency'12 Travel Support
-
批准号:1160282
-
项目类别:Standard Grant
-
资助金额:$2.5万
-
财政年份:2012
-
负责人:Iulian Neamtiu
-
依托单位:
CAREER: Differential Types and Declarative Hypothesis Testing for Software Evolution
-
批准号:1149632
-
项目类别:Continuing Grant
-
资助金额:$49.82万
-
财政年份:2012
-
负责人:Iulian Neamtiu
-
依托单位:
TC: Medium: Collaborative Research: Program Analysis for Smartphone Application Security
-
批准号:1064646
-
项目类别:Standard Grant
-
资助金额:$36.59万
-
财政年份:2011
-
负责人:Iulian Neamtiu
-
依托单位:
海外基金