【发布时间】:2010-11-04 15:48:36
【问题描述】:
我必须审核一个大型 Web Java/J2ee 应用程序,该应用程序已经发展了多个 年。它是由其他公司编写的,而不是我正在工作的公司。在 它的当前状态已经变得难以发展和维护,新的 功能很难添加,并且经常导致有时出现的错误 生产。似乎有一些复制/粘贴的代码导致代码重复。 当前的应用程序是某种在线购物,到处都有一些类似 cms 的内容。 在代码的较新部分中主要是 Struts 和一些 Spring,也许是一些 ejb 好措施。有一些可用的单元测试,但不是很多。 这些是我被告知的,我还没有看到实际的代码。
我的公司将提议重写此应用程序的部分内容,以减少 复杂性,提高质量和模块化,并使添加更容易 没有回归的新功能。 在做出任何承诺之前,他们希望得到某种赞赏 现有代码的质量,并评估其中有多少可以重用,以便 对必须做的事情有更多的猜测——完全重写或部分重写 重写。
问题是我必须在很短的时间内(几天)完成这项工作,所以我 试图为在这么短的时间内可以完成的事情制定一个计划。我的想法是:
- 查看“基本”内容 - 异常处理、日志记录
- 查看分层级别(视图、控制器、dao 层)
- 衡量单元测试的实际覆盖率
- 可能在项目上运行一些 Checkstyle、Findbugs 和 PMD
- ...
所以实际的问题是我应该考虑/检查/测量/等哪些其他事情?
我不确定我能从中得到什么样的数字,以及它是否真的意味着 某事,我觉得管理层的要求是错误的 方法,所以第二个问题是:有没有人有更好的主意?
我将不胜感激任何想法、建议和评论。
【问题讨论】:
-
你真的忙得不可开交。如果不验证它们,我不会相信现有的单元测试。你肯定需要某种回归测试来确保重写的代码仍然满足功能要求。您列表中的项目是一个好的开始,尤其是您提到的静态分析工具。
标签: java jakarta-ee audit