Despite decades of engineering and scientific research efforts, separation of concerns in software development remains not fully achieved. The ultimate goal is to truly allow code reuse without large maintenance and evolution costs. The challenge has been to avoid the crosscutting of concerns phenomenon, which has no apparent complete solution. In this paper, we show that business-domain code inscriptions play an even larger role in this challenge than the crosscutting of concerns. We then introduce a new methodology, called Metadata Interpretation Driven Development (MIDD) that suggests a possible path to realize separation of concerns by removing functional software concerns from the coding phase. We propose a change in the perspective for building software, from being based on object representation at the coding level to being based on object interpretation, whose definitions are put into layers of representation other than coding. The metadata of the domain data is not implemented at the level of the code. Instead, they are interpreted at run time. As an important consequence, such constructs can be applied across functional requirements, across business domains, with no concerns regarding the need to rewrite or refactor code. We show how this can increase the (re)use of the constructs. Furthermore, the execution of a single interpreter, due to its semantic disconnection from the domain, suggests that it can simultaneously serve different business domains. Although high-reuse software construction is considered a relatively mature field, changes in the software services scenario demand relevant solutions. The emergence of new software architectures, such as serverless computing, reinforces the need to rethink software construction. This approach is presented as a response to this need.


翻译:尽管进行了数十年的工程和科学研究努力,但软件开发的关切仍未完全实现。最终目标是真正允许代码再利用,而无需大量维护和演化成本。挑战在于避免关注的交叉现象,这没有明显的完整解决方案。在本文件中,我们表明,商业域代码的输入在这一挑战中比关注的交叉层面发挥更大的作用。然后我们引入了一种新的方法,称为元数据解释驱动器开发(MIDDD),它提出了通过从编码阶段删除功能软件关切而实现关注分离的可能途径。我们建议改变构建软件的视角,从基于编码层面的物体代表制到基于对象解释,其定义被置于代号之外的层次上。我们发现,商业域数据的元数据没有在代码层面得到实施,而是在运行过程中被解读。作为重要后果,这种构建可以跨越功能需求,在商业领域中应用功能性解释,而无需重新解读或重构码代码。我们指出,这可以增加软件的(在编码层面)使用这种构建结构的视角,但相对而言,使用一个不同的解释系统是使用一个不同的构建模型,因此,需要使用一种不同的构建模型。

0
下载
关闭预览

相关内容

商业数据分析,39页ppt
专知会员服务
160+阅读 · 2020年6月2日
《可解释的机器学习-interpretable-ml》238页pdf
专知会员服务
202+阅读 · 2020年2月24日
Keras François Chollet 《Deep Learning with Python 》, 386页pdf
专知会员服务
151+阅读 · 2019年10月12日
[综述]深度学习下的场景文本检测与识别
专知会员服务
77+阅读 · 2019年10月10日
机器学习入门的经验与建议
专知会员服务
92+阅读 · 2019年10月10日
【哈佛大学商学院课程Fall 2019】机器学习可解释性
专知会员服务
103+阅读 · 2019年10月9日
【SIGGRAPH2019】TensorFlow 2.0深度学习计算机图形学应用
专知会员服务
39+阅读 · 2019年10月9日
CCF推荐 | 国际会议信息6条
Call4Papers
9+阅读 · 2019年8月13日
人工智能 | ISAIR 2019诚邀稿件(推荐SCI期刊)
Call4Papers
6+阅读 · 2019年4月1日
Call for Participation: Shared Tasks in NLPCC 2019
中国计算机学会
5+阅读 · 2019年3月22日
IEEE | DSC 2019诚邀稿件 (EI检索)
Call4Papers
10+阅读 · 2019年2月25日
计算机类 | ISCC 2019等国际会议信息9条
Call4Papers
5+阅读 · 2018年12月25日
A Technical Overview of AI & ML in 2018 & Trends for 2019
待字闺中
16+阅读 · 2018年12月24日
人工智能 | PRICAI 2019等国际会议信息9条
Call4Papers
6+阅读 · 2018年12月13日
Hierarchical Disentangled Representations
CreateAMind
4+阅读 · 2018年4月15日
计算机类 | 期刊专刊截稿信息9条
Call4Papers
4+阅读 · 2018年1月26日
【今日新增】IEEE Trans.专刊截稿信息8条
Call4Papers
7+阅读 · 2017年6月29日
Interpretable Active Learning
Arxiv
3+阅读 · 2018年6月24日
Arxiv
22+阅读 · 2018年2月14日
Arxiv
4+阅读 · 2017年11月14日
VIP会员
相关VIP内容
商业数据分析,39页ppt
专知会员服务
160+阅读 · 2020年6月2日
《可解释的机器学习-interpretable-ml》238页pdf
专知会员服务
202+阅读 · 2020年2月24日
Keras François Chollet 《Deep Learning with Python 》, 386页pdf
专知会员服务
151+阅读 · 2019年10月12日
[综述]深度学习下的场景文本检测与识别
专知会员服务
77+阅读 · 2019年10月10日
机器学习入门的经验与建议
专知会员服务
92+阅读 · 2019年10月10日
【哈佛大学商学院课程Fall 2019】机器学习可解释性
专知会员服务
103+阅读 · 2019年10月9日
【SIGGRAPH2019】TensorFlow 2.0深度学习计算机图形学应用
专知会员服务
39+阅读 · 2019年10月9日
相关资讯
CCF推荐 | 国际会议信息6条
Call4Papers
9+阅读 · 2019年8月13日
人工智能 | ISAIR 2019诚邀稿件(推荐SCI期刊)
Call4Papers
6+阅读 · 2019年4月1日
Call for Participation: Shared Tasks in NLPCC 2019
中国计算机学会
5+阅读 · 2019年3月22日
IEEE | DSC 2019诚邀稿件 (EI检索)
Call4Papers
10+阅读 · 2019年2月25日
计算机类 | ISCC 2019等国际会议信息9条
Call4Papers
5+阅读 · 2018年12月25日
A Technical Overview of AI & ML in 2018 & Trends for 2019
待字闺中
16+阅读 · 2018年12月24日
人工智能 | PRICAI 2019等国际会议信息9条
Call4Papers
6+阅读 · 2018年12月13日
Hierarchical Disentangled Representations
CreateAMind
4+阅读 · 2018年4月15日
计算机类 | 期刊专刊截稿信息9条
Call4Papers
4+阅读 · 2018年1月26日
【今日新增】IEEE Trans.专刊截稿信息8条
Call4Papers
7+阅读 · 2017年6月29日
Top
微信扫码咨询专知VIP会员