面向特征的软件分析工具
各维度得分依据公开资料与字段推算,加权后即综合评分,仅供参考。
Featureous 是由 University of Southern Denmark 相关机构发布的 NetBeans 插件,定位为“feature-centric analysis and remodularization”工具。它关注 Java/面向对象系统中用户可见功能在包、类、方法间散布和纠缠的问题,通过建立功能到源码的追踪关系,辅助代码理解、变更影响判断和按功能重模块化。
工具通过执行追踪生成 feature traces。开发者需要先从文档或界面识别功能,并在功能入口方法上添加 @FeatureEntryPoint 注解;之后可通过 “Trace project” 运行程序并触发功能,也可通过 JUnit 测试执行追踪。Feature explorer 展示 trace 文件,Feature inspector 可查看功能由哪些类和方法实现,并能跳转到 NetBeans 编辑器。编辑器侧栏会显示代码参与哪些功能,甚至可折叠与当前功能无关的代码。
重模块化方面,Featureous 使用多目标分组遗传算法,围绕内聚、耦合、功能散布/纠缠、循环依赖等 14 类目标优化包结构。生成结果可在 UML-like 图中查看,开发者可拖拽类进行人工调整,最后自动写入源码结构。此外,它还提供跨版本演化指标可视化,以及 BeanShell 控制台访问、修改、导出追踪数据。FAQ 还说明可基于其 JAR cluster 开发自定义 NetBeans 模块并使用提供的 API。
FAQ 明确表示可免费使用,但希望用户填写反馈问卷。文档包含功能介绍、Demo、FAQ、论文和示例 trace 文件,研究说明较充分;不过页面信息主要停留在 2008-2012 年,兼容版本也仅验证到 NetBeans Platform 6.9.1 与 7.0 Beta。
优点是问题定义清晰,特别适合 Java 遗留系统的功能定位、代码理解、重构研究和架构演化分析;与 NetBeans 编辑器集成较深。缺点是需要人工识别功能入口并注解,学习和建模成本不低;依赖旧版 NetBeans、BTrace/JOGL 等组件,现代开发环境适配性不明,且未看到开源许可、商业支持或持续维护信息。
抓取文本未提供中国大陆网络、支付或镜像信息,因此访问状态为未知。若无法使用或需要现代生态,可考虑 IntelliJ IDEA/NetBeans 内置分析重构、SonarQube、Understand、Structure101、JArchitect 等替代工具,但它们未必具备相同的“按用户功能追踪源码”能力。
本测评基于公开资料整理,不构成购买建议,请以 featureous.org 官网实际信息为准。
偏学术的软件重模块化分析工具。
评分明细(分布与用户短评)接入中。当前展示 TG4G 综合评分,数据源自公开测评与用户反馈。