CAREER: From Incidental Algorithms to Reusable Components: Managing the Emergent Complexity of Large-Scale Software Systems
职业:从附带算法到可重用组件:管理大型软件系统的新兴复杂性
基本信息
- 批准号:0845861
- 负责人:
- 金额:$ 40.28万
- 依托单位:
- 依托单位国家:美国
- 项目类别:Standard Grant
- 财政年份:2009
- 资助国家:美国
- 起止时间:2009-07-01 至 2014-06-30
- 项目状态:已结题
- 来源:
- 关键词:
项目摘要
This award is funded under the American Recovery and Reinvestment Act of 2009(Public Law 111-5).Real-world software systems are large, complex artifacts built up over multiple layers of abstraction using diverse collections of components. Though individual components are often reusable, code that manages interactions between components seldom is. Such code is large-scale itself, and encodes significant amounts of application logic. A potential for communication between components, typically effected by message passing between objects, forms incidental structures in a program. Though such structures are real data structures, they lack an explicit representation in program code and at run time, and are thus difficult to reuse, manipulate programmatically, and reason about. This project focuses on identifying incidental structures that arise in important domains of mainstream programming---human interfaces in particular---and modeling them as declaratively specified explicit software artifacts. The hypothesis is that large amounts of ad-hoc code can be obsoleted, and replaced by reusable algorithms and components.The particular source of incidental data structures in user interfaces is the event handling code, implementing propagation of values, validation logic, interface element enabling logic, scripting support, etc. The project seeks to demonstrate that these functionalities, typically implemented with application-specific non-reusable code, are not specific to a particular user interface; they can be realized with reusable generic algorithms, parameterized over a (declaratively specified) model that captures the relations, as a system of constraints, between values manipulated by the user interface.The proposed work will impact future large-scale software development, aiming to realize substantially increased productivity and software that is more reliable, efficient, and predictable.
该奖项是根据2009年《美国复苏和再投资法案》(Public Law 111-5)资助的。真实世界的软件系统是使用不同组件集合在多个抽象层上构建的大型复杂构件。虽然单个组件通常是可重用的,但管理组件之间交互的代码很少是可重用的。这样的代码本身规模很大,并且编码了大量的应用程序逻辑。通常由对象之间的消息传递实现的组件之间的通信潜力形成了程序中的附带结构。尽管这样的结构是真实的数据结构,但它们在程序代码和运行时缺乏显式表示,因此难以重用、以编程方式操作和推理。这个项目专注于识别在主流编程的重要领域中出现的附带结构-特别是人机界面-并将它们建模为声明性指定的显式软件构件。用户界面中附带数据结构的特定来源是事件处理代码,实现了值的传播、验证逻辑、界面元素使能逻辑、脚本支持等。该项目试图证明,这些功能通常由特定于应用程序的不可重用代码实现,并不是特定于特定用户界面的;它们可以用可重复使用的通用算法来实现,并在(声明性指定的)模型上进行参数化,该模型将用户界面操纵的值之间的关系捕捉为约束系统。拟议的工作将影响未来的大规模软件开发,旨在实现显著提高的生产率和更可靠、更高效和更可预测的软件。
项目成果
期刊论文数量(0)
专著数量(0)
科研奖励数量(0)
会议论文数量(0)
专利数量(0)
数据更新时间:{{ journalArticles.updateTime }}
{{
item.title }}
{{ item.translation_title }}
- DOI:
{{ item.doi }} - 发表时间:
{{ item.publish_year }} - 期刊:
- 影响因子:{{ item.factor }}
- 作者:
{{ item.authors }} - 通讯作者:
{{ item.author }}
数据更新时间:{{ journalArticles.updateTime }}
{{ item.title }}
- 作者:
{{ item.author }}
数据更新时间:{{ monograph.updateTime }}
{{ item.title }}
- 作者:
{{ item.author }}
数据更新时间:{{ sciAawards.updateTime }}
{{ item.title }}
- 作者:
{{ item.author }}
数据更新时间:{{ conferencePapers.updateTime }}
{{ item.title }}
- 作者:
{{ item.author }}
数据更新时间:{{ patent.updateTime }}
Jaakko Jarvi其他文献
Jaakko Jarvi的其他文献
{{
item.title }}
{{ item.translation_title }}
- DOI:
{{ item.doi }} - 发表时间:
{{ item.publish_year }} - 期刊:
- 影响因子:{{ item.factor }}
- 作者:
{{ item.authors }} - 通讯作者:
{{ item.author }}
{{ truncateString('Jaakko Jarvi', 18)}}的其他基金
ST-CRTS: Collaborative Research: Lifting Compiler Optimizations via Generic Programming
ST-CRTS:协作研究:通过通用编程提升编译器优化
- 批准号:
0541014 - 财政年份:2006
- 资助金额:
$ 40.28万 - 项目类别:
Standard Grant
相似海外基金
Incidental Interaction: Novel Technology to Support Elders-as-Athletes through Augmenting Everyday Interactions
偶然互动:通过增强日常互动支持老年人运动员的新技术
- 批准号:
EP/W031477/1 - 财政年份:2023
- 资助金额:
$ 40.28万 - 项目类别:
Research Grant
Clinical Validation of OsteoSight - AI technology for incidental detection of osteoporosis
OsteoSight 的临床验证 - 用于偶然检测骨质疏松症的人工智能技术
- 批准号:
10084038 - 财政年份:2023
- 资助金额:
$ 40.28万 - 项目类别:
Collaborative R&D
Understanding electrochemical hydrogenation reactions over post-transition metal electrodes: the role of incidental mediators and metastable phases
了解后过渡金属电极上的电化学氢化反应:偶然介体和亚稳态相的作用
- 批准号:
2301381 - 财政年份:2023
- 资助金额:
$ 40.28万 - 项目类别:
Standard Grant
Incidental learning across statistically-structured input in active tasks
主动任务中统计结构输入的附带学习
- 批准号:
2420979 - 财政年份:2023
- 资助金额:
$ 40.28万 - 项目类别:
Continuing Grant
Mental Health of Mothers of Children with CL/P and Incidental Findings from Whole Genome Sequencing
CL/P 儿童母亲的心理健康状况以及全基因组测序的偶然发现
- 批准号:
10594077 - 财政年份:2022
- 资助金额:
$ 40.28万 - 项目类别:
Essential and incidental measurement error: Bayesian estimation and inference when sample measurements are random-variable-valued
基本和偶然测量误差:样本测量为随机变量值时的贝叶斯估计和推断
- 批准号:
RGPIN-2021-04357 - 财政年份:2022
- 资助金额:
$ 40.28万 - 项目类别:
Discovery Grants Program - Individual
Incidental Music and Ballet Music of Ludwig van Beethoven
路德维希·范·贝多芬的附带音乐和芭蕾舞音乐
- 批准号:
22K00120 - 财政年份:2022
- 资助金额:
$ 40.28万 - 项目类别:
Grant-in-Aid for Scientific Research (C)
Exploring the effectiveness of gaming as an extramural activity for L2 incidental vocabulary acquisition
探索游戏作为二语附带词汇习得的校外活动的有效性
- 批准号:
2752476 - 财政年份:2022
- 资助金额:
$ 40.28万 - 项目类别:
Studentship
Essential and incidental measurement error: Bayesian estimation and inference when sample measurements are random-variable-valued
基本和偶然测量误差:样本测量为随机变量值时的贝叶斯估计和推断
- 批准号:
DGECR-2021-00428 - 财政年份:2021
- 资助金额:
$ 40.28万 - 项目类别:
Discovery Launch Supplement
Whole Genome Sequencing for Orofacial Clefts, Incidental Findings and Role of Community Gatekeepers
口面部裂痕的全基因组测序、偶然发现和社区看门人的作用
- 批准号:
10358751 - 财政年份:2021
- 资助金额:
$ 40.28万 - 项目类别: