EAGER: Bringing Design Thinking into Developers' Coding Activities through an Architectural Tactic Recommender System
EAGER: Bringing Design Thinking into Developers' Coding Activities through an Architectural Tactic Recommender System
批准号:
1543176
负责人:
Mehdi Mirakhorli
金额:
$8.0万
依托单位国家:
美国
项目类别:
Standard Grant
财政年份:
2015
资助国家:
美国
项目状态:
已结题
起止时间:
2015-07-01 至 2017-06-30
中文摘要
任何复杂的软件密集型系统的成功在很大程度上取决于它在多大程度上解决了利益相关者的质量问题,如可靠性、可用性、安全性和性能。软件架构师利用一组丰富的经过验证且可重用的体系结构解决方案,例如策略和模式来满足每个特定的质量属性。本研究项目的目标是开发一种新颖的策略推荐系统,该系统通过学习数千个开源软件系统的源代码进行训练。该项目将包括开发一套新颖的大数据兼容体系结构剖析器,可以检测?然后呢?学习?几个开发人员在数千个开源系统的源代码中做出的架构选择。这些知识被用来推荐适合新项目的建筑策略。这代表着利用自动化技术将设计思维带入开发人员的范式转变?日常编码活动。与现有的体系结构设计实践不同,现有的体系结构设计实践都涉及对系统的质量问题进行严格的前期分析,本研究采用自下而上的方法。它使用源代码中潜在的领域主题,不仅确定了给定项目中缺少的体系结构策略/模式,还推荐了几个来自开源软件项目的高质量策略/模式的样本实现。这项研究的结果将部分解决目前设计和实施之间的差距。这项工作的更广泛影响将是提高软件开发的生产率,提高软件密集型系统的质量和可进化性。
英文摘要
The success of any complex software-intensive system is highly dependent on the extent to which it addresses stakeholders' quality concerns such as reliability, availability, security and performance. Software architects utilize a rich set of proven and re-usable architectural solutions such as tactics and patterns to satisfy each specific quality attribute. The objective of this research project is to develop a novel tactic-recommender system that is trained through learning from the source code of thousands of open-source software systems. The project will include developing a set of novel big-data compatible architecture profilers that ?detect? and ?learn? architectural choices made by several developers across source codes of thousands of open-source systems. This knowledge is used to recommend architectural tactics fitting a new project. This represents a paradigm shift in utilizing automated techniques to bring design thinking into developers? daily coding activities. Unlike existing architecture design practices, which all involve a rigorous upfront analysis of the system's quality concerns, this research takes a bottom-up approach. It uses the latent domain topics in the source code and identifies not only architectural tactics/patterns missing in a given project but also recommends several high quality sample implementations of the tactics/patterns from open source software projects. The findings of this research will partially address the current gap between design and implementation. The broader impact of the work will be to improve the productivity of software development and to improve the quality and evolvability of software-intensive systems.
期刊论文(0)
专著(0)
科研奖励(0)
会议论文
Collaborative Research: EAGER: Towards a Design Methodology for Software-Driven Sustainability
-
批准号:2233872
-
项目类别:Standard Grant
-
资助金额:$10.0万
-
财政年份:2022
-
负责人:Mehdi Mirakhorli
-
依托单位:
CAREER: Synthesizing Architectural Tactics
-
批准号:1943300
-
项目类别:Continuing Grant
-
资助金额:$40.37万
-
财政年份:2020
-
负责人:Mehdi Mirakhorli
-
依托单位:
SaTC: CORE: Small: Characterizing Architectural Vulnerabilities
-
批准号:1816845
-
项目类别:Standard Grant
-
资助金额:$43.91万
-
财政年份:2018
-
负责人:Mehdi Mirakhorli
-
依托单位:
CRI: CI-NEW: Collaborative Research: Constructing a Community-Wide Software Architecture Infrastructure
-
批准号:1823246
-
项目类别:Standard Grant
-
资助金额:$37.42万
-
财政年份:2018
-
负责人:Mehdi Mirakhorli
-
依托单位:
REU Site: Cultivating Next Generation Software Engineering Researchers
-
批准号:1757680
-
项目类别:Standard Grant
-
资助金额:$36.0万
-
财政年份:2018
-
负责人:Mehdi Mirakhorli
-
依托单位:
CI-P: Collaborative Research: Planning and Prototyping a Community-Wide Software Architecture Instrument
-
批准号:1629810
-
项目类别:Standard Grant
-
资助金额:$3.0万
-
财政年份:2016
-
负责人:Mehdi Mirakhorli
-
依托单位:
海外基金