Tôi phải kiểm tra một ứng dụng web Java/J2ee lớn đã phát triển qua một số năm. Nó được viết bởi một công ty khác, không phải là công ty tôi đang làm việc. Trong trạng thái hiện tại của nó đã trở nên khó phát triển và duy trì, các chức năng mới khó thêm và thường dẫn đến các lỗi mà đôi khi hiển thị trong sản xuất . Dường như có một số mã sao chép/dán đã dẫn đến sao chép mã. Ứng dụng hiện tại là một số loại hình mua sắm trực tuyến với một số nội dung giống như cms ở đây và ở đó. Nó chủ yếu là Struts và một số mùa xuân trong các phần mới của mã, có thể một số ejbs ném vào cho biện pháp tốt. Có một số bài kiểm tra đơn vị có sẵn, nhưng không có nhiều bài kiểm tra. Đây là những điều tôi đã được nói, tôi chưa thấy mã thực sự.Cách tiếp cận tốt nhất trong việc kiểm toán một ứng dụng web java/j2ee lớn là gì
Công ty của tôi sẽ đề xuất viết lại các phần của ứng dụng này để giảm bớt sự phức tạp của , cải thiện chất lượng và mô đun, và giúp thêm các chức năng mới một cách dễ dàng. Trước khi thực hiện bất kỳ cam kết nào, họ muốn có một số đánh giá cao về chất lượng của mã hiện có và để xác định số lượng nó có thể được sử dụng lại, theo thứ tự để có nhiều hơn dự đoán về những gì sẽ có xong - viết lại toàn bộ hoặc một phần viết lại.
Bắt là tôi sẽ phải làm điều này trong một thời gian rất ngắn (một vài ngày) vì vậy tôi là cố gắng tìm ra kế hoạch cho những gì có thể được thực hiện trong một thời gian ngắn như vậy. Những gì tôi đang thiking là:
- check out "cơ bản" thứ - ngoại lệ xử lý, khai thác gỗ
- séc ra mức độ layering (lượt xem, điều khiển, lớp dao)
- đo độ che phủ thực tế của đơn vị kiểm tra
- có thể chạy một số Checkstyle, FindBugs và PMD so với các dự án
- ...
Vậy câu hỏi thực tế là những điều sh khác Tôi có tính đến/kiểm tra/đo lường/etc không?
Tôi không chắc chắn những gì loại số liệu mà tôi có thể nhận ra điều này và nếu nó thực sự có nghĩa là gì đó, tôi có cảm giác rằng những gì công tác quản lý là yêu cầu là loại phương pháp sai , vì vậy câu hỏi thứ hai sẽ là: có ai có ý tưởng tốt hơn không?
Tôi sẽ đánh giá cao bất kỳ ý tưởng, đề xuất, nhận xét về điều này.
Edit: Tôi sẽ có thêm hai máy dò mã chết để trộn: UCD và DCD
Bạn đã thực sự nắm chặt tay. Tôi sẽ không tin tưởng vào các bài kiểm tra đơn vị hiện tại mà không cần xác minh chúng. Bạn chắc chắn sẽ cần một số loại kiểm tra hồi quy để đảm bảo mã viết lại vẫn đáp ứng các yêu cầu chức năng.Các mục trong danh sách của bạn là một khởi đầu tốt, đặc biệt là các công cụ phân tích tĩnh mà bạn đã đề cập. – rich