여가 시간에는 Delphi Windows 응용 프로그램에서 전송되는 충돌 보고서 (충돌하지 않는 다른 버그 보고서는 아님)를 수집하는 작은 웹 기반 시스템을 개발 중입니다.
문제 해결을 위해 사용자는 하드웨어 또는 운영 체제 버전과 특정 버그 및 / 또는 충돌 간의 관계를 찾기위한 데이터 마이닝 기능을 원합니다.
예를 들어 이것이 작동하는 방법 :
- 모든 크래시마다 데이터베이스에 보고서가 있으며, 크래시 시점에서 중복을 식별하기 위해 스택 추적 (콜 스택)의 지문 / 해시 코드가 있습니다.
- 이 알고리즘은 버그 보고서의 모든 복제본에 다른 공통 속성 (예 : 운영 체제의 누락 된 서비스 팩)이 있는지 확인합니다.
- 분석 결과는 버그 보고서가 공통적으로 갖는 모든 속성을 나열합니다.
이러한 자동 버그 보고서에 현재 실행중인 모든 프로세스의 이름, 파일 이름,로드 된 DLL의 버전 정보 등과 같은 모든 주요 정보가 포함되어 있다고 가정합니다.
반복 충돌과 환경 간의 상관 관계를 어떻게 찾을 수 있습니까? 도움이 될 특정 알고리즘이나 통계적 방법이 있습니까?
2
상관 관계 찾기는 무겁습니다. 직장 에서이 도구를 보셨습니까 ? 데이터를 구성하는 올바른 방법을 찾는 데 도움이 될 수 있습니다.
델파이에서도 상관 관계 계산을하고 싶습니까? 그런 다음이 델파이 수학 함수 목록을 살펴보십시오 . 많은 내용을 다루고 라이브러리에 대한 설명과 링크를 제공합니다.
@DaveBall 흥미로운 링크에 감사드립니다. 그러나 버그 리포트는 Delphi에서 나오지만 웹 서비스는 실제로 Java로 구현됩니다. 아마도 알고리즘을 시작점 또는 '오프라인'통계 도구로 사용할 수 있습니다.
"이산 위험 모델"을 살펴볼 수 있습니다. 이것은 고정 된 특성 (환경 변수)과 마지막 충돌 이후의 시간에서 실패 이벤트 (크래쉬)를 회귀하려는 경우처럼 보입니다. 관측치가 충분하면 (충돌 보고서) 환경 변수 사이의 상호 작용을 모델에 추가 할 수 있습니다. 그러면 시스템 충돌의 방향을 알려줍니다. 불행히도 Java에서 그러한 모델을 구현하는 것이 얼마나 쉬운 지 모르겠습니다.
—
jmtroos
생각할 수있는 분석의 종류는 문제의 크기에 따라 다릅니다. 즉, 몇 가지 뚜렷한 종류의 충돌이 있습니까? 가능한 속성은 몇 개입니까?
—
Sameer 2016 년