审计大型java / j2ee Web应用程序的最佳方法是什么
我必须审核一个经过几年发展的大型 Web Java/J2ee 应用程序。它是由其他公司写的,不是我为之工作的公司。在当前状态下,它变得难以发展和维护,新功能很难添加,并且经常导致有时在生产中出现的错误。似乎有一些复制/粘贴的代码导致代码重复。当前的应用程序是某种在线购物,在这里和那里都有一些类似CMS的内容。它主要是Struts和一些Spring在代码的新部分,也许是一些ejbs投入了很好的措施。有一些单元测试可用,但不是很多。这些是我被告知的事情,我还没有看到实际的代码。
我的公司将提出重写此应用程序部分内容的提议,以降低复杂性,提高质量和模块化,并有可能在没有回归的情况下添加更简单的新功能。在进行任何提交之前,他们希望对现有代码的质量有某种程度的了解,并评估其中有多少可以重用,以便对必须完成的工作进行更多的猜测 - 完全重写或部分重写。
问题是我必须在很短的时间内(几天)完成这项工作,所以我正试图制定一个计划在这么短的时间内可以做些什么。我所想的是:
- 查看“基本”事物 - 异常处理,日志记录
- 查看分层级别(视图、控制器、dao 层)
- 测量单元测试的实际覆盖率
- 也许在项目上运行一些Checkstyle,Findbugs和PMD
- ...
所以实际的问题是我应该考虑/检查/测量/等其他事项吗?
我不确定我能从中得到什么样的数字,如果它真的意味着什么,我有一种感觉,管理层问的是一种错误的方法,所以第二个问题是:有没有人有更好的想法?
我将不胜感激任何想法,建议,对此发表评论。