论文标题
使用数据挖掘集成环境增强软件开发过程(ESDP)
Enhancing Software Development Process (ESDP) using Data Mining Integrated Environment
论文作者
论文摘要
如今,它已成为重用现有的应用程序编程接口(API),类库和快速软件开发框架的基本需求。软件开发人员经常通过调用各自的API或库来重复使用。但是这样做,开发人员通常会在寻找适当的代码段时遇到不同的问题。在大多数情况下,API和库是复杂的,结构化良好或记录得很好。在线搜索引擎会消耗搜索时间,但匹配并不相关,表示不好。为了根据查询获取建议,我们可以在线使用搜索引擎或代码搜索引擎在线摘要。在某些情况下,基于数据库依赖性搜索和远程Web服务器的挖掘存储库搜索为开发人员带来了问题。在代码搜索引擎上找到API建议通常处理超大文件,这些文件最终会减慢软件开发过程。我们在整个工作中都搜索了解决方案,并试图带来更好的结果。作为替代行动,我们实施了一个系统,我们称之为增强软件开发过程(ESDP)工具,该工具能够为开发人员提供高效且有效的集成环境,并具有更好的抽象和搜索结果的表示,并且需要从源代码派生。我们还构建了并应用了基于XML的富集存储库,以从客户端的挖掘存储库中获取建议,而无需与Internet依赖的服务器进行交互以节省并发症和时间。我们使用基于图的表示形式为程序员或开发人员提供最相关的代码骨架或映射。
Nowadays, it has become a basic need to reuse existing Application Programming Interface (API), Class Libraries, and frameworks for rapid software development. Software developers often reuse this by calling the respective APIs or libraries. But in doing so, developers usually encounter different problems in searching for appropriate code snippets. In most cases, API and Libraries are complex and not well structured or well documented. Online search engine consumes time in searching, yet match is not that relevant and representation is not good. To get a suggestion according to the query we can find that snippet online using search engines or code search engines. In some cases database dependent searching and remote web server based mined repository searching bring a problem to the developers. Finding an API recommendation on code search engine often deal with extra-large files that eventually slow down the software development process. We have searched for a solution throughout our work and tried to bring a better outcome. As an alternative action, we have implemented a system what we call Enhancing Software Development Process (ESDP) tool that is able to provide an efficient and working integrated environment to the developers with a better abstraction and representation of the search results and programmers need to be derived from the source codes. We also have built and applied an XML based enriched repository to get a recommendation from the mined repository on the client-side without interacting with the internet-dependent server to save complications and times. We provide the most relevant code skeletons or mapping to programmers or developers using graph-based representation.