首页> 外文会议>IEEE International Conference on Software Architecture Companion >An Automated Approach to Recover the Use-case View of an Architecture
【24h】

An Automated Approach to Recover the Use-case View of an Architecture

机译:一种恢复架构的用例视图的自动化方法

获取原文

摘要

Many tools and techniques were described in the literature for automated recovery of software architecture from software artifacts, such as code. These approaches generate models of software architecture at different levels of granularity and notations. Whereas there is a vast literature in recovering components, packages, and interactions between them, we lack automated approaches for recovering the use-case view of an architecture. In the 4+1 view of the architecture, use-case view or scenarios represents a view of the architecture in terms of the systems’ core functionalities provided to end-users. This view is essential in understanding the system and its underlying architectural decisions. Manually recovering and documenting the application’s scenarios from source code is time-consuming, as large-scale enterprise systems can have a large number of scenarios. In this NEMI paper, we present a novel automated approach for recovering the scenarios from Web applications source code. These scenarios are shown in use case diagrams alongside with sequence diagrams that further describe how each use case is implemented in the system. Our approach works under the assumption that the URLs (endpoints) of a Web application can give us clues to the system’s use cases. Therefore, our technique combines a set of heuristics and static analysis in order to detect the endpoints in a Java Web application as well as the backend classes and methods that will process the request. Subsequently, it uses Natural Language Processing (NLP) techniques to extract use cases from these identified endpoints and uses the computed program slices to generate sequence diagrams for each identified use case. We conducted an initial evaluation of our approach by detecting endpoints in Sagan, an existing open-source Web application. We then demonstrate the use cases generated and how their implementation looks like through sequence diagrams.
机译:文献中描述了许多工具和技术,用于从软件工件自动恢复软件架构,例如代码。这些方法在不同级别的粒度和符号中生成软件架构的模型。鉴于恢复组件,包裹和它们之间的相互作用存在巨大的文献,我们缺乏用于恢复架构的用例视图的自动化方法。在架构的4 + 1视图中,用例视图或方案表示在为最终用户提供的系统核心功能方面的架构的视图。这种观点对于了解系统及其潜在的架构决策至关重要。从源代码中手动恢复和记录应用程序的方案是耗时的,因为大型企业系统可以具有大量方案。在此NEMI纸中,我们提出了一种新颖的自动化方法,用于从Web应用程序源代码中恢复方案。这些方案在使用案例图中显示了与序列图一起,进一步描述了系统中的每个用例如何实现。我们的方法在假设Web应用程序的URL(端点)可以为系统的用例中提供线索来工作。因此,我们的技术结合了一组启发式和静态分析,以便检测Java Web应用程序中的端点以及将处理请求的后端类和方法。随后,它使用自然语言处理(NLP)技术来从这些识别的端点中提取使用情况,并使用计算的程序切片生成每个识别的用例的序列图。我们通过在现有的开源Web应用程序中检测Sagan中的端点进行了对我们的方法进行了初步评估。然后,我们展示了使用案例生成的和它们的实现方式通过序列图。

著录项

相似文献

  • 外文文献
  • 中文文献
  • 专利
获取原文

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号