Leveraging Patterns and Interesting Anomalies through Scalable Semantic Analysis
Leveraging Patterns and Interesting Anomalies through Scalable Semantic Analysis
批准号:
RGPIN-2018-03749
负责人:
Walker, Robert
金额:
$2.99万
依托单位:
依托单位国家:
加拿大
项目类别:
Discovery Grants Program - Individual
财政年份:
2018
资助国家:
加拿大
项目状态:
已结题
起止时间:
2018-01-01 至 2019-12-31
中文摘要
智能手机、汽车、医疗设备、银行系统、电网:软件运行着我们世界的许多方面,其影响力每天都在增加。 从表面上看,我们可以看到这些应用程序之间存在差异,但这些差异有多深?它的功能有很多共同点吗? 人们在建造它时犯的错误有模式吗? 是否有隐藏的宝石,其中有人已经解决了共同的问题,在一个创新的方式? 这些问题超出了我们目前的科学和工程能力,无法大规模回答。 找到这些共同点、模式和宝石将有助于我们从经验中学习,支持好的方法,并基于证据而不是一厢情愿地警告坏的方法。 这将允许创建更好的软件,最终造福于我们依赖该软件的社会。实现这一目标并非易事。在真实的世界中已经收集了大量关于软件的数据。 不幸的是,这样的数据是基于文本细节的:虽然基于文本的数据足以让谷歌这样的搜索引擎回答常见的问题(比如查找当地餐馆的列表),但基于文本的数据并没有说明文本的潜在含义。 软件程序的行为是通过计算机执行以软件编程语言编写的详细指令集来实现的。 虽然人类语言复杂而模糊,但软件语言必然是明确的:计算机是愚蠢的,但忠实的,完全按照命令行事。原则上,我们可以通过分析编写软件的文本(称为源代码)来理解软件的可能行为(称为其语义)。 但我们面临挑战:工业软件往往非常庞大,数量很多,我们没有可靠的方法来比较一个软件程序与另一个软件程序的语义。我们将通过解决两个关键问题来应对这些挑战:我们必须大规模地分析软件语义,克服限制传统方法有用性的基本技术问题;我们必须比较和对比这种分析的结果,也是大规模的,以便发现软件语义中的模式和异常。** 我们将开发技术来允许对大量软件源代码进行语义探索。我们将开始探索,以证明我们的新技术的价值。我们的发现将导致对软件本质的更深入理解,丰富我们的科学知识。深入了解好的和坏的实践将导致更好的软件,通过避免坏的实践,但执行好的实践。社会对软件的依赖程度越来越高,它将因更好的软件和更低的成本而受益。
英文摘要
Smartphones, automobiles, medical devices, the banking system, the electrical grid: software runs many aspects of our world, and its reach increases every day. Superficially, we can see that there are differences between each of these applications, but how deep do those differences run? Is there a lot of commonality in its functionality? Are there patterns to the mistakes that people make when building it? Are there hidden gems in which someone has solved common problems in an innovative way? Such questions are beyond our current scientific and engineering abilities to answer on a large scale. Finding those commonalities, patterns, and gems would help us to learn from experience, support good approaches, and warn of bad approaches, based on evidence and not on wishful thinking. This would allow better software to be created, ultimately benefitting our society which depends on that software.******Achieving this goal is not straightforward. Much data is already collected about software in the real world. Unfortunately, such data is based on textual details: while text-based data is good enough to allow search engines like Google to answer common questions (like finding a list of local restaurants), text-based data says nothing about the underlying meaning of the text. The behaviour of a software program is achieved by a computer performing a detailed set of instructions, written in a software programming language. While human languages are complex and ambiguous, software languages are necessarily unambiguous: the computer is dumb but faithful, doing exactly as it is told. In principle, we can understand the possible behaviours of software (called its semantics) by analyzing the text in which it is written (called source code). But we face challenges: industrial software tends to be really big; there is a lot of it; and we have no reliable means of comparing the semantics of one software program with those of another.******We will address these challenges by tackling two key problems: we must analyze software semantics on a large-scale, overcoming the fundamental technical problems that limit the usefulness of traditional approaches; and we must compare and contrast the results of such analyses, also on a large-scale, in order to discover patterns and anomalies in the software semantics. ******We will develop techniques to permit the semantic exploration of huge amounts of software source code. We will start that exploration to demonstrate the value of our novel techniques. Our discoveries will lead to deeper understanding of the nature of software, enriching our scientific knowledge. Deeper knowledge of good and bad practices will lead to better software, by avoiding bad practices but enforcing good practices. Society, which depends ever more heavily on software, will benefit as a result of better software, which is produced at lower costs.**
期刊论文(0)
专著(0)
科研奖励(0)
会议论文
Leveraging Patterns and Interesting Anomalies through Scalable Semantic Analysis
-
批准号:RGPIN-2018-03749
-
项目类别:Discovery Grants Program - Individual
-
资助金额:$5.97万
-
财政年份:2022
-
负责人:Walker, Robert
-
依托单位:
Leveraging Patterns and Interesting Anomalies through Scalable Semantic Analysis
-
批准号:RGPIN-2018-03749
-
项目类别:Discovery Grants Program - Individual
-
资助金额:$2.99万
-
财政年份:2021
-
负责人:Walker, Robert
-
依托单位:
Leveraging Patterns and Interesting Anomalies through Scalable Semantic Analysis
-
批准号:RGPIN-2018-03749
-
项目类别:Discovery Grants Program - Individual
-
资助金额:$2.99万
-
财政年份:2020
-
负责人:Walker, Robert
-
依托单位:
Leveraging Patterns and Interesting Anomalies through Scalable Semantic Analysis
-
批准号:RGPIN-2018-03749
-
项目类别:Discovery Grants Program - Individual
-
资助金额:$2.99万
-
财政年份:2019
-
负责人:Walker, Robert
-
依托单位:
Change impact analysis in enterprise-scale heterogeneous systems
-
批准号:514641-2017
-
项目类别:Collaborative Research and Development Grants
-
资助金额:$1.02万
-
财政年份:2019
-
负责人:Walker, Robert
-
依托单位:
Change impact analysis in enterprise-scale heterogeneous systems
-
批准号:514641-2017
-
项目类别:Collaborative Research and Development Grants
-
资助金额:$1.75万
-
财政年份:2018
-
负责人:Walker, Robert
-
依托单位:
Change impact analysis in enterprise-scale heterogeneous systems
-
批准号:514641-2017
-
项目类别:Collaborative Research and Development Grants
-
资助金额:$2.48万
-
财政年份:2017
-
负责人:Walker, Robert
-
依托单位:
The Best of Both Worlds: Reusable Software via Unplanned Reuse
-
批准号:262097-2013
-
项目类别:Discovery Grants Program - Individual
-
资助金额:$2.19万
-
财政年份:2017
-
负责人:Walker, Robert
-
依托单位:
The Best of Both Worlds: Reusable Software via Unplanned Reuse
-
批准号:262097-2013
-
项目类别:Discovery Grants Program - Individual
-
资助金额:$2.19万
-
财政年份:2016
-
负责人:Walker, Robert
-
依托单位:
The Best of Both Worlds: Reusable Software via Unplanned Reuse
-
批准号:262097-2013
-
项目类别:Discovery Grants Program - Individual
-
资助金额:$2.19万
-
财政年份:2015
-
负责人:Walker, Robert
-
依托单位:
Finding Change Targets and Estimating Impact in Big Data, Multi-language Software Systems
-
批准号:477221-2014
-
项目类别:Engage Grants Program
-
资助金额:$1.82万
-
财政年份:2014
-
负责人:Walker, Robert
-
依托单位:
The Best of Both Worlds: Reusable Software via Unplanned Reuse
-
批准号:262097-2013
-
项目类别:Discovery Grants Program - Individual
-
资助金额:$2.19万
-
财政年份:2014
-
负责人:Walker, Robert
-
依托单位:
The Best of Both Worlds: Reusable Software via Unplanned Reuse
-
批准号:262097-2013
-
项目类别:Discovery Grants Program - Individual
-
资助金额:$2.19万
-
财政年份:2013
-
负责人:Walker, Robert
-
依托单位:
Unanticipated reuse
-
批准号:262097-2008
-
项目类别:Discovery Grants Program - Individual
-
资助金额:$1.62万
-
财政年份:2012
-
负责人:Walker, Robert
-
依托单位:
Unanticipated reuse
-
批准号:262097-2008
-
项目类别:Discovery Grants Program - Individual
-
资助金额:$1.62万
-
财政年份:2011
-
负责人:Walker, Robert
-
依托单位:
Unanticipated reuse
-
批准号:262097-2008
-
项目类别:Discovery Grants Program - Individual
-
资助金额:$1.62万
-
财政年份:2010
-
负责人:Walker, Robert
-
依托单位:
Unanticipated reuse
-
批准号:262097-2008
-
项目类别:Discovery Grants Program - Individual
-
资助金额:$1.62万
-
财政年份:2009
-
负责人:Walker, Robert
-
依托单位:
Unanticipated reuse
-
批准号:262097-2008
-
项目类别:Discovery Grants Program - Individual
-
资助金额:$1.62万
-
财政年份:2008
-
负责人:Walker, Robert
-
依托单位:
Three steps towards unanticipated large-scale software use/reuse
-
批准号:334917-2005
-
项目类别:Collaborative Research and Development Grants
-
资助金额:$3.9万
-
财政年份:2007
-
负责人:Walker, Robert
-
依托单位:
Easing software evolution and reuse through efficient context insensitivity
-
批准号:262097-2003
-
项目类别:Discovery Grants Program - Individual
-
资助金额:$1.53万
-
财政年份:2007
-
负责人:Walker, Robert
-
依托单位:
海外基金