CAREER: Synthesizing Architectural Tactics
职业:综合建筑策略
基本信息
- 批准号:1943300
- 负责人:
- 金额:$ 40.37万
- 依托单位:
- 依托单位国家:美国
- 项目类别:Continuing Grant
- 财政年份:2020
- 资助国家:美国
- 起止时间:2020-03-01 至 2025-02-28
- 项目状态:未结题
- 来源:
- 关键词:
项目摘要
Software architecture refers to the discipline of designing the structure of software systems. The structure consists of software elements (or modules or components) and relations among them, as well as properties and constraints on the structure and behavior of the elements. The term “architecture” used in this sense is a metaphor, analogous to the architecture of a building. The software architecture serves as a blueprint for the system and the developing project, and guides the design and development of the software. During the designing of a software architecture, attributes such as reliability, availability, security, and performance are addressed by posing and comparing alternate solutions, understanding their trade-offs, and ultimately making a series of interrelated design decisions with the intention of optimizing the degree to which each of the quality concerns is satisfied. As in building architecture, the software architecture discipline has developed standard methods, called architectural tactics, of making these architectural design decisions. The main objective of this project is to develop and validate new technologies that could make software architecture design more intuitive, particularly for novice programmers and new learners. The vision is to someday be able to have programmers express their design intent intuitively and generate error-free software programs. Software architecture design is notoriously difficult to learn and even harder to master. In order to satisfy quality attribute scenarios, appropriate architectural solutions need to be chosen and implemented. These solutions are often based on well-known architectural tactics and software frameworks that deliver these tactics. This project presents a solution to change software design and programming from purely manual and exclusive tasks to one in which a programmer and an automated tactic synthesis tool collaborate to generate defect-free software design and implementation that satisfy quality attributes scenarios. This project will create (1) a context-aware inference algorithm capable of recommending suitable architectural tactics to programmers, (2) learning by example techniques for inferring the specification models that describe how a tactic can be implemented using a software framework, and (3) automated tools and an intuitive domain-specific language for the synthesis of tactical code. In addition, this research will design, develop, evaluate, and release new interventions in terms of software design strategies that can help novices and new learners during software design and programming activities.This award reflects NSF's statutory mission and has been deemed worthy of support through evaluation using the Foundation's intellectual merit and broader impacts review criteria.
软件体系结构是指设计软件系统结构的学科。结构由软件元素(或模块或组件)和它们之间的关系,以及对元素的结构和行为的属性和约束组成。在这个意义上使用的术语“架构”是一种隐喻,类似于建筑物的架构。 软件体系结构是系统和开发项目的蓝图,指导软件的设计和开发。在软件架构的设计过程中,诸如可靠性、可用性、安全性和性能等属性是通过提出和比较替代解决方案、理解它们的权衡以及最终做出一系列相互关联的设计决策来解决的,这些设计决策的目的是优化每个质量问题的满足程度。 与构建体系结构一样,软件体系结构规程已经开发了标准方法,称为体系结构策略,用于制定这些体系结构设计决策。该项目的主要目标是开发和验证新技术,使软件架构设计更加直观,特别是对于新手程序员和新学习者。我们的愿景是有朝一日能够让程序员直观地表达他们的设计意图,并生成无错误的软件程序。软件架构设计是出了名的难学,甚至更难掌握。为了满足质量属性场景,需要选择和实现适当的架构解决方案。这些解决方案通常基于众所周知的架构策略和交付这些策略的软件框架。该项目提出了一种解决方案,将软件设计和编程从纯手工和专有任务转变为程序员和自动化策略合成工具协作生成满足质量属性场景的无缺陷软件设计和实现。该项目将创建(1)能够向程序员推荐合适的架构策略的上下文感知推理算法,(2)通过示例技术学习,用于推断描述如何使用软件框架实现策略的规范模型,以及(3)自动化工具和直观的特定于领域的语言,用于合成策略代码。此外,该研究将设计,开发,评估和发布新的干预措施的软件设计策略,可以帮助新手和新的学习者在软件设计和编程活动。这个奖项反映了NSF的法定使命,并已被认为是值得通过评估使用基金会的智力价值和更广泛的影响审查标准的支持。
项目成果
期刊论文数量(6)
专著数量(0)
科研奖励数量(0)
会议论文数量(0)
专利数量(0)
Serialization-aware call graph construction
序列化感知调用图构建
- DOI:10.1145/3460946.3464319
- 发表时间:2021
- 期刊:
- 影响因子:0
- 作者:Santos, Joanna C.;Jones, Reese A.;Ashiogwu, Chinomso;Mirakhorli, Mehdi
- 通讯作者:Mirakhorli, Mehdi
Barriers to Shift-Left Security: The Unique Pain Points of Writing Automated Tests Involving Security Controls
- DOI:10.1145/3475716.3475786
- 发表时间:2021-10
- 期刊:
- 影响因子:0
- 作者:Danielle Gonzalez;P. Perez;Mehdi Mirakhorli
- 通讯作者:Danielle Gonzalez;P. Perez;Mehdi Mirakhorli
Constructing a Shared Infrastructure for Software Architecture Analysis and Maintenance
- DOI:10.1109/icsa51549.2021.00022
- 发表时间:2021-03
- 期刊:
- 影响因子:0
- 作者:Joshua Garcia;Mehdi Mirakhorli;Lu Xiao;Yutong Zhao;Ibrahim Mujhid;K. Pham;A. Okutan;S. Malek;R. Kazman;Yuanfang Cai;N. Medvidović
- 通讯作者:Joshua Garcia;Mehdi Mirakhorli;Lu Xiao;Yutong Zhao;Ibrahim Mujhid;K. Pham;A. Okutan;S. Malek;R. Kazman;Yuanfang Cai;N. Medvidović
ArCode: Facilitating the Use of Application Frameworks to Implement Tactics and Patterns
- DOI:10.1109/icsa51549.2021.00021
- 发表时间:2021-02
- 期刊:
- 影响因子:0
- 作者:A. Shokri;Joanna C. S. Santos;Mehdi Mirakhorli
- 通讯作者:A. Shokri;Joanna C. S. Santos;Mehdi Mirakhorli
ArCode: A Tool for Supporting Comprehension and Implementation of Architectural Concerns
ArCode:支持理解和实施架构问题的工具
- DOI:10.1109/icpc52881.2021.00056
- 发表时间:2021
- 期刊:
- 影响因子:0
- 作者:Shokri, Ali;Mirakhorli, Mehdi
- 通讯作者:Mirakhorli, Mehdi
{{
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 }}
Mehdi Mirakhorli其他文献
Automated Characterization of Software Vulnerabilities
软件漏洞的自动表征
- DOI:
10.1109/icsme.2019.00023 - 发表时间:
2019 - 期刊:
- 影响因子:0
- 作者:
Danielle Gonzalez;Holly Hastings;Mehdi Mirakhorli - 通讯作者:
Mehdi Mirakhorli
Sound Call Graph Construction for Java Object Deserialization
Java 对象反序列化的健全调用图构建
- DOI:
- 发表时间:
2023 - 期刊:
- 影响因子:0
- 作者:
Joanna C. S. Santos;Mehdi Mirakhorli;Ali Shokri - 通讯作者:
Ali Shokri
Transforming trace information in architectural documents into re-usable and effective traceability links
将架构文档中的跟踪信息转换为可重用且有效的追溯链接
- DOI:
10.1145/1988676.1988685 - 发表时间:
2011 - 期刊:
- 影响因子:0
- 作者:
Mehdi Mirakhorli;J. Cleland - 通讯作者:
J. Cleland
Mitomycin
丝裂霉素
- DOI:
- 发表时间:
2019 - 期刊:
- 影响因子:0
- 作者:
Danielle Gonzalez;Joanna C. S. Santos;A. Popovich;Mehdi Mirakhorli;M. Nagappan - 通讯作者:
M. Nagappan
Views on software engineering from the twin peaks of requirements and architecture
从需求与架构双峰看软件工程
- DOI:
- 发表时间:
2013 - 期刊:
- 影响因子:0
- 作者:
M. Galster;Mehdi Mirakhorli;J. Cleland;J. Burge;Xavier Franch;R. Roshandel;P. Avgeriou - 通讯作者:
P. Avgeriou
Mehdi Mirakhorli的其他文献
{{
item.title }}
{{ item.translation_title }}
- DOI:
{{ item.doi }} - 发表时间:
{{ item.publish_year }} - 期刊:
- 影响因子:{{ item.factor }}
- 作者:
{{ item.authors }} - 通讯作者:
{{ item.author }}
{{ truncateString('Mehdi Mirakhorli', 18)}}的其他基金
Collaborative Research: EAGER: Towards a Design Methodology for Software-Driven Sustainability
合作研究:EAGER:迈向软件驱动的可持续性设计方法
- 批准号:
2233872 - 财政年份:2022
- 资助金额:
$ 40.37万 - 项目类别:
Standard Grant
SaTC: CORE: Small: Characterizing Architectural Vulnerabilities
SaTC:核心:小:描述架构漏洞
- 批准号:
1816845 - 财政年份:2018
- 资助金额:
$ 40.37万 - 项目类别:
Standard Grant
CRI: CI-NEW: Collaborative Research: Constructing a Community-Wide Software Architecture Infrastructure
CRI:CI-NEW:协作研究:构建社区范围的软件架构基础设施
- 批准号:
1823246 - 财政年份:2018
- 资助金额:
$ 40.37万 - 项目类别:
Standard Grant
REU Site: Cultivating Next Generation Software Engineering Researchers
REU 网站:培养下一代软件工程研究人员
- 批准号:
1757680 - 财政年份:2018
- 资助金额:
$ 40.37万 - 项目类别:
Standard Grant
CI-P: Collaborative Research: Planning and Prototyping a Community-Wide Software Architecture Instrument
CI-P:协作研究:规划和原型设计社区范围的软件架构工具
- 批准号:
1629810 - 财政年份:2016
- 资助金额:
$ 40.37万 - 项目类别:
Standard Grant
EAGER: Bringing Design Thinking into Developers' Coding Activities through an Architectural Tactic Recommender System
EAGER:通过架构策略推荐系统将设计思维引入开发人员的编码活动
- 批准号:
1543176 - 财政年份:2015
- 资助金额:
$ 40.37万 - 项目类别:
Standard Grant
相似海外基金
Collaborative Research: Understanding the impacts of an ongoing megadrought: Synthesizing the role of soil moisture in driving ecosystem fluxes from site to regional scales
合作研究:了解正在进行的特大干旱的影响:综合土壤湿度在驱动生态系统通量从场地到区域尺度方面的作用
- 批准号:
2331163 - 财政年份:2024
- 资助金额:
$ 40.37万 - 项目类别:
Standard Grant
Collaborative Research: Understanding the impacts of an ongoing megadrought: Synthesizing the role of soil moisture in driving ecosystem fluxes from site to regional scales
合作研究:了解正在进行的特大干旱的影响:综合土壤湿度在驱动生态系统通量从场地到区域尺度方面的作用
- 批准号:
2331162 - 财政年份:2024
- 资助金额:
$ 40.37万 - 项目类别:
Standard Grant
Unlocking New Chemistries in Extant Enzymes for Synthesizing Bioactive Molecules
解锁现有酶中用于合成生物活性分子的新化学成分
- 批准号:
10784165 - 财政年份:2023
- 资助金额:
$ 40.37万 - 项目类别:
Conference: CAS Climate: Synthesizing and assessing wholistic urban climate solutions in Texas
会议:CAS 气候:综合和评估德克萨斯州的整体城市气候解决方案
- 批准号:
2232533 - 财政年份:2023
- 资助金额:
$ 40.37万 - 项目类别:
Standard Grant
Synthesizing hydrologic process knowledge to determine global drivers of dominant processes
综合水文过程知识以确定主导过程的全球驱动因素
- 批准号:
2322510 - 财政年份:2023
- 资助金额:
$ 40.37万 - 项目类别:
Standard Grant
Innovation of synthesizing alpha-oxidized peptide enabled by Lossen rearrangement
通过 Lossen 重排实现 α-氧化肽合成的创新
- 批准号:
23K18187 - 财政年份:2023
- 资助金额:
$ 40.37万 - 项目类别:
Grant-in-Aid for Challenging Research (Exploratory)
FMitF: Track I: Synthesizing Semantic Checkers for Runtime Verification of Production Distributed Systems
FMITF:第一轨:综合语义检查器以进行生产分布式系统的运行时验证
- 批准号:
2318937 - 财政年份:2023
- 资助金额:
$ 40.37万 - 项目类别:
Standard Grant
Synthesizing immunoinformatics and genetic epidemiology to identify signatures of natural functional immunity to malaria parasites
综合免疫信息学和遗传流行病学,以确定对疟疾寄生虫的天然功能免疫特征
- 批准号:
10642330 - 财政年份:2023
- 资助金额:
$ 40.37万 - 项目类别:
Collaborative Research: FMitF: Track I: Automating and Synthesizing Parallel Zero-Knowledge Protocols
合作研究:FMitF:第一轨:自动化和综合并行零知识协议
- 批准号:
2318975 - 财政年份:2023
- 资助金额:
$ 40.37万 - 项目类别:
Standard Grant
Collaborative Research: FMitF: Track I: Automating and Synthesizing Parallel Zero-Knowledge Protocols
合作研究:FMitF:第一轨:自动化和综合并行零知识协议
- 批准号:
2318974 - 财政年份:2023
- 资助金额:
$ 40.37万 - 项目类别:
Standard Grant