{"title":"DMFE","authors":"Victor Millnert, Magnus Templing, Patrik Åberg","doi":"10.1145/3468737.3494086","DOIUrl":null,"url":null,"abstract":"In this paper we present DMFE (did my function execute?), which is a concept capable of learning and recognizing functional-level events, states, and loads from low-level execution-data. DMFE-functions are not necessarily software functions, as in \"my_fun( )\", but general functions in the etymological sense of the word, such as \"someone pushed code to git\", or \"player activity is high\". This allows DMFE to act as a general multi-purpose sensor which can be applied across a variety of software components-to be used for software monitoring, debugging, or testing-all without requiring the need for a deep understanding of the source code. Since the truth is always in the code, the main idea behind DMFE is to have the code itself \"paint\" execution-data on a \"canvas\" during run-time, and then let a deep neural network detect patterns which it associates with these functions and behaviors. We have successfully applied DMFE on internal production-code, and to illustrate how this is done we have also applied it on the two open-source projects: i) the distributed version-control system Git and ii) a text-based multi-user dungeon game Mud.","PeriodicalId":254382,"journal":{"name":"Proceedings of the 14th IEEE/ACM International Conference on Utility and Cloud Computing","volume":"6 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2021-12-06","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"1","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"Proceedings of the 14th IEEE/ACM International Conference on Utility and Cloud Computing","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1145/3468737.3494086","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 1
Abstract
In this paper we present DMFE (did my function execute?), which is a concept capable of learning and recognizing functional-level events, states, and loads from low-level execution-data. DMFE-functions are not necessarily software functions, as in "my_fun( )", but general functions in the etymological sense of the word, such as "someone pushed code to git", or "player activity is high". This allows DMFE to act as a general multi-purpose sensor which can be applied across a variety of software components-to be used for software monitoring, debugging, or testing-all without requiring the need for a deep understanding of the source code. Since the truth is always in the code, the main idea behind DMFE is to have the code itself "paint" execution-data on a "canvas" during run-time, and then let a deep neural network detect patterns which it associates with these functions and behaviors. We have successfully applied DMFE on internal production-code, and to illustrate how this is done we have also applied it on the two open-source projects: i) the distributed version-control system Git and ii) a text-based multi-user dungeon game Mud.