ArCode: A Tool for Supporting Comprehension and Implementation of Architectural Concerns
Autor: | Mehdi Mirakhorli, Ali Shokri |
---|---|
Rok vydání: | 2021 |
Předmět: |
FOS: Computer and information sciences
Authentication Java business.industry Computer science media_common.quotation_subject Program comprehension 020207 software engineering 02 engineering and technology computer.software_genre Misuse detection Software Engineering (cs.SE) Comprehension Computer Science - Software Engineering Debugging Java collections framework 0202 electrical engineering electronic engineering information engineering 020201 artificial intelligence & image processing Plug-in Software engineering business computer media_common computer.programming_language |
Zdroj: | ICPC |
DOI: | 10.1109/icpc52881.2021.00056 |
Popis: | Integrated development environments (IDE) play an important role in supporting developers during program comprehension and completion. Many of these supportive features focus on low-level programming and debugging activities. Unfortunately, there is less support in understanding and implementing architectural concerns in the form of patterns, tactics and/or other concerns. In this paper we present ArCode, a tool designed as a plugin for a popular IDE, IntelliJ IDEA. ArCode is able to learn correct ways of using frameworks' API to implement architectural concerns such as Authentication and Authorization. Analyzing the programmer's code, this tool is able to find deviations from correct implementation and provide fix recommendations alongside with graphical demonstrations to better communicate the recommendations with the developers. We showcase how programmers can benefit from ArCode by providing an API misuse detection and API recommendation scenario for a famous Java framework, Java Authentication and Authorization (JAAS) security framework. This paper has been accepted in 29th IEEE/ACM International Conference on Program Comprehension (ICPC 2021) and is going to be published. Please feel free to cite it |
Databáze: | OpenAIRE |
Externí odkaz: |