# Comparison of Multi-Agent Platform Usability for Industrial-Grade Applications
## 5 AOSE in Contrast to Modern SDLC
### State of Maintenance  
Frameworks used for industrial-grade applications should be under continuous maintenance to accommodate changes in the latest software distributions. In particular, they need to provide constant updates to prevent vulnerabilities in dependencies and compliance issues within (1) internally used libraries and (2) changes introduced within programming languages. Moreover, such frameworks should regularly address the issues reported by their users, either by implementing direct solutions or suggesting temporary workarounds that ensure the stability of production applications. In the context of current AOSE, this is one area that is significantly lacking. To begin with, many agent platforms rely on outdated software distributions. For instance, MASON [61] uses Java 8 (when Java 23 is the newest version), while NetLogo [72] uses Scala 2.12.18 (with Scala 3.5.1 being the newest). This not only limits the possible features offered by these platforms and impacts the quality of their code (see Section 5.3) but also may cause compatibility issues with the latest programming language versions (e.g., Java 21 introduced modifications in threads, concurrency, and sequenced collections). Moreover, since many agent platforms are maintained by individuals or small research groups, they often lack the necessary resources to provide adequate support for their continuous updates. As such, some platforms are maintained irregularly (e.g., SpaDES [73]), bringing uncertainty regarding their depreciation. Additionally, this factor also affects the efficiency of bug fixing, resulting in some platforms having open issues for extended periods. In this context, the state of maintenance of JADE, Jadex, and SPADE is outlined in Table 5.  
Unlike most modern frameworks that use Maven or Gradle in their builds, JADE operates on Ant. Notably, it targets Java JDK 1.5, which is extremely outdated compared to the latest Java JDK 23. Although JADE has been used in practical applications based on Java 21 (e.g., JRBA [74]), the existing difference between distributions raises concerns about the long-term functionality of the framework. These concerns become even more emphasized when analyzing the code inspection results, which indicate a total of 168 errors related to the usage of deprecated APIs (e.g., constructors of _Long_ and _Integer_ classes, which were removed in Java 9) and 2,637 warnings suggesting possible improvements related to consecutive language level migrations (starting from Java 5 up to Java 21). This technical debt is further compounded by the irregular releases of JADE. Specifically, the latest JADE release was made in December 2022, while the prior one appeared in 2017. The low frequency of releases also affects the number of accumulated errors in JADE over the years. For example, a known problem that leads to the loss of messages in inter-platform communication was reported around 2005 but still remains unresolved. Furthermore, JADE does not offer concise means for reporting issues (e.g., a common backlog), which would streamline communication with end users. Consequently, all of these factors contribute to a high risk for JADE's applicability to production-class applications. In terms of maintenance, Jadex appears to be much more stable than JADE. The latest Jadex-V version relies on Java 17, which is the distribution commonly used by industrial-grade applications. In its core module, there are no errors regarding the usage of deprecated methods, and the code inspection indicates only 103 warnings, with possible suggestions for language-level migration improvements. Moreover, up until Jadex-V, subsequent versions