paint-brush
Điểm tương đồng giữa xác định vị trí lỗi và giải quyết tội phạmtừ tác giả@grgr
637 lượt đọc
637 lượt đọc

Điểm tương đồng giữa xác định vị trí lỗi và giải quyết tội phạm

từ tác giả Ivan Grigorev5m2022/10/13
Read on Terminal Reader

dài quá đọc không nổi

Kỹ sư thủ công QA của InDrive mô tả quá trình điều tra báo cáo lỗi. Tương tự như một cuộc điều tra tội phạm, QA được hướng dẫn bởi kiến thức về sản phẩm và kiến thức về sản phẩm. Cả hai quy trình đều tập trung vào việc điều tra kết quả của hành vi sai trái, cũng như nguyên nhân và ảnh hưởng của nó. Kỹ sư QA áp dụng các kỹ thuật thiết kế thử nghiệm tập trung vào các giá trị ranh giới, các lớp tương đương và theo cặp. Ngược lại, các điều tra viên sẽ áp dụng các chiến thuật và sự kết hợp để họ có thể lập kế hoạch cho các bước tiếp theo một cách hiệu quả nhất có thể.
featured image - Điểm tương đồng giữa xác định vị trí lỗi và giải quyết tội phạm
Ivan Grigorev HackerNoon profile picture

Đối với tôi, dường như hai lĩnh vực này có rất nhiều điểm chung. Ví dụ, cả hai quy trình đều tập trung vào việc điều tra kết quả của hành vi sai trái, cũng như nguyên nhân và ảnh hưởng của nó, cùng với các thực hành lưu trữ hồ sơ và tài liệu liên quan.


Một năm trước, tôi nhận được lời đề nghị cho vai trò Kỹ sư hướng dẫn sử dụng chất lượng cao tại inDriver. Nhưng trước đó, tôi đã dành bảy năm để điều tra các vụ án hình sự tại nhiều đơn vị và cơ quan thực thi pháp luật. Trong thời gian phục vụ, tôi đã làm việc với nhiều loại tội phạm hình sự, từ tội phạm nghiêm trọng gây nguy hiểm đến tính mạng và sức khỏe của một người đến tội phạm kinh tế có tính chất liên quốc gia. Tại công việc cuối cùng của tôi, chức danh công việc của tôi là: “Điều tra viên cao cấp của Ban điều tra chống tội phạm có tổ chức của Cục điều tra thuộc Bộ nội vụ nước Cộng hòa Sakha (Yakutia)”.


Bây giờ công việc của tôi là thiết lập kiểm tra hồi quy, viết tự động kiểm tra giao diện người dùng di động và thực hiện nhiều thứ khác được thiết kế để tăng tốc quá trình cung cấp các tính năng mới cho người dùng mà không làm giảm chất lượng sản phẩm.


Khởi động một cuộc điều tra

Cũng giống như một cuộc điều tra tội phạm bắt đầu bằng việc kiểm tra hiện trường vụ án, báo cáo lỗi bắt đầu với mô tả về môi trường nơi phát hiện ra lỗi. Bằng cách này, chúng tôi thu thập một số dữ liệu chắc chắn và đáng tin cậy. Sau đó, sử dụng dữ liệu đó làm cơ sở và áp dụng phương pháp suy luận, cũng như kiến thức của chúng tôi về môi trường hoặc sản phẩm, chúng tôi có thể thu hẹp phạm vi điều tra và bắt đầu lên kế hoạch cho các động thái tiếp theo và phát triển các giả định của chúng tôi.

Sơ đồ hiện trường vụ án và mô tả môi trường trong báo cáo lỗi

Xây dựng kế hoạch hành động

Khi chúng tôi có được dữ liệu thô, chúng tôi phải đối mặt với sự đa dạng thông tin. Bây giờ điều quan trọng là phải vạch ra một kế hoạch hành động. Thời gian là nguồn lực số một của chúng tôi ở đây. Sẽ khó có ý kiến hay nếu kiểm tra tất cả các giá trị từ -2,147,483,648 đến 2,147,483,647 trong trường nhập tên để định vị lỗi. Tương tự, điều tra viên không có khả năng thẩm vấn tất cả cư dân của thị trấn hoặc gửi từng đồ dùng hoặc vật dụng trong nhà đi xét nghiệm di truyền phân tử.


Để giải quyết vấn đề này, kỹ sư QA áp dụng các kỹ thuật thiết kế thử nghiệm tập trung vào các giá trị ranh giới, các lớp tương đương và theo từng cặp. Ngược lại, các nhà điều tra sẽ áp dụng các chiến thuật và sự kết hợp để họ có thể lập kế hoạch cho các bước tiếp theo một cách hiệu quả nhất có thể.

Mục lục mẫu cho danh sách thẩm vấn


Đưa ra các giả định đầu tiên của chúng tôi

Giả sử chúng tôi nhận được một báo cáo giết người cho thấy rằng chúng tôi đã gặp sự cố trong ứng dụng của mình. Từ kinh nghiệm của tôi với tư cách là một điều tra viên, tôi biết rằng gần 90 phần trăm tất cả các vụ giết người có liên quan theo cách này hay cách khác với chồng, vợ, người thân, bạn bè hoặc hàng xóm của nạn nhân. Đó là câu chuyện tương tự với ứng dụng… chúng tôi được hướng dẫn bởi kiến thức về sản phẩm: giả sử chúng tôi sử dụng trình đánh giá và kiểm tra các yêu cầu gửi đi và câu trả lời mà chúng tôi nhận được. Cho đến nay, không có gì thú vị: tất cả các thành viên trong gia đình đều có alibis và phản hồi từ máy chủ chứa “200.” Mọi thứ dường như có thứ tự ở đây.

Ngoài ra, chúng ta biết rằng một người có trí óc sáng suốt sẽ không phạm tội giết người mà không có lý do. Dựa vào đó, chúng tôi có thể thu hẹp danh sách không giới hạn các nghi phạm đối với những người mà nạn nhân có liên quan đến tài chính hoặc có liên quan đến công việc hoặc một số liên hệ khác. Tương tự, trong ứng dụng, chúng tôi có thể xác định phiên bản phát hành mà từ đó lỗi bắt đầu lan truyền và phát triển các giả định của chúng tôi về những thay đổi nào trong mã có thể đã khiến lỗi xuất hiện.

Kéo nhật ký lên

Tiếp theo, chúng tôi cố gắng thiết lập tất cả các sự kiện xảy ra trước tội phạm để truy tìm một số bằng chứng buộc tội:


  • Chúng tôi xem cảnh quay từ máy quay video.

  • Chúng tôi thẩm vấn những người hàng xóm để tìm hiểu xem họ có nghe thấy âm thanh của một cuộc vật lộn hoặc nhìn thấy bất kỳ người nào khả nghi hay không.

  • Chúng tôi xác định người mà nạn nhân đã nói chuyện qua điện thoại ngay trước khi tội ác được thực hiện.


Khi xử lý một khiếm khuyết, chúng tôi cũng thu thập bằng chứng:


  • Chúng tôi ghi lại nhật ký trong Android Studio hoặc XCode.
  • Chúng tôi kiểm tra nhật ký máy chủ.


Trong quá trình này, chúng tôi phát hiện ra rằng một người đàn ông NullPointerException đã vào căn hộ ngay trước khi tội ác được thực hiện. Những người hàng xóm xác định anh ta là một kẻ lưu manh địa phương với tiền án tiền sự thường xuyên say xỉn và được tất cả những người thuê của tòa nhà sợ hãi.


Kiểm tra các vật chứng tại hiện trường vụ án

Giả sử rằng, một khi bằng chứng buộc tội được đưa ra, người đàn ông thú nhận tội ác. Cuộc điều tra không kết thúc ở đó. Chúng ta phải chắc chắn rằng chính anh ta là người đã gây ra tội ác, và việc thú nhận tội lỗi của anh ta được thúc đẩy bởi sự hối hận, thay vì sợ làm hỏng tâm trạng của điều tra viên.


Vì mục đích này, bằng chứng được xác minh tại nơi xảy ra tội ác, nơi mà thủ phạm bị buộc tội được yêu cầu tiết lộ toàn bộ chi tiết của tội ác và kể lại mọi tình tiết mà bất kỳ bên nào không liên quan đến vụ án không được biết đến. tội ác. Do đó, bằng cách xác định một kịch bản ổn định cho việc tái tạo khiếm khuyết, chúng tôi đã có được bằng chứng thuyết phục rằng chúng tôi đã tìm thấy bên phù hợp mà chúng tôi đang tìm kiếm.

Đã hoàn thành điều tra tội phạm = Báo cáo lỗi

Một khi tất cả các tình tiết của tội phạm đã được xác định, điều tra viên không phải là công việc của họ là phải sửa chữa khuyết điểm. Ông tổ chức thu thập chứng cứ vào hồ sơ vụ án hình sự, lập bản cáo trạng và trình trước tòa án. Quyết định về kết án, về cách sửa lỗi hoặc về việc có tuyên bố lỗi này là một tính năng vô tội được đưa ra ngoài quá trình thử nghiệm hay không.

Lập lý do gây án

Để ngăn chặn các hành vi phạm tội tương tự trong tương lai, điều tra viên phải thiết lập các tình huống góp phần vào việc thực hiện tội phạm được xem xét và thực hiện các hành động có liên quan. Chẳng hạn, anh ta hoặc cô ta phải xác định lý do tại sao không có bước nào được thực hiện trước đó để phản hồi các báo cáo về hành vi của thủ phạm, hoặc tại sao các biện pháp được thực hiện đối với anh ta không ngăn chặn được tội phạm.


Điều này cũng đúng trong trường hợp thử nghiệm: khi một lỗi được phát hiện trên PROD, việc xác định các yếu tố góp phần vào sự xuất hiện của nó sẽ không gây hại gì:


  • Phạm vi kiểm tra không đầy đủ.
  • Hợp nhất mà không có phạm vi kiểm tra.
  • Công thức vấn đề kém.
  • Các yêu cầu được xác định không đầy đủ.
  • Các trường hợp góc không được chuyên gia QA kiểm tra.
  • Không đủ thời gian dành cho các mục đích kiểm tra và phát triển.
  • Trình độ chuyên môn của các thành viên trong nhóm phát triển thấp.
  • Yêu cầu thường xuyên thay đổi.

Sự kết luận

Rõ ràng, công việc của một điều tra viên và một người kiểm tra là không giống nhau. Mặc dù vậy, một số đặc điểm chung vẫn có nhiều sự khác biệt hơn đáng kể so với những điểm tương đồng giữa chúng. Nhưng nếu vì bất kỳ lý do gì mà bạn thấy mình đang phải đối mặt với mong muốn thay đổi hoàn toàn quỹ đạo sự nghiệp của mình, bạn có thể tìm thấy các khóa học phù hợp từ đối tác của chúng tôi và điều này là hoàn toàn có thể. Ngay cả trong một lĩnh vực hoàn toàn khác, bạn có thể tìm thấy các hoạt động đòi hỏi tư duy tương tự - và điều đó sẽ giúp bạn đạt được mục tiêu mà bản thân đã đặt ra dễ dàng hơn một chút.


Cũng được xuất bản tại đây