2010-04-01 4 views
5

정말 멋진 소프트웨어를 개발 중이라고 가정 해보십시오. 그것은 많은 고객에게 배치 될 것입니다. 그들은이 소프트웨어가 필요할 것이고 시간이 결정적인 상황에서이 소프트웨어를 사용할 것입니다. 그래서 뭔가 잘못되면 그들은 (당신) 전화 할 것입니다. 그리고 당신이나 당신의 팀이 문제를 해결해야 할 것입니다. 빠른. 너는 경험에서 이것이 일어날 것을 너는 안다.앞으로 버그를 수정하는 데 도움이되도록 구현해야 할 사항은 무엇입니까?

이제 미래의 자조를 위해 무엇을 구현할 것인지 결정할 수 있다면 그게 뭐지?

편집 : 이것은 데스크톱 응용 프로그램에 대한 것입니다. Marcelo에게 감사드립니다.

편집 : 또한 기술 지원을 통해 문제를 해결할 수 있다고 가정하고 수정해야합니다. 또는 전용 기술 지원이 없습니다.

+1

데스크톱 또는 웹 앱입니까? 큰 차이를 만듭니다. –

답변

4
  • 로깅 시스템
  • 자동으로 충돌이
  • 점잖은 오류 메시지를 덤프 보낼 수있는 클라이언트를위한 방법 :
("알 수없는 오류가 오류 코드가 발생했습니다. 0xAA001200는"노 이동입니다)

어쨌든 당신의 시간은 소프트웨어 개선에 더 많이 소비되었습니다. 이것은 QA/기술 지원을위한 일종의 소리입니다.

+0

로깅 시스템에 대해 확인 : 자체 개발 로깅 시스템과 비슷합니까? 아니면 Windows 이벤트 로그와 같은 것입니까? 항상 사용하도록 설정 하시겠습니까? 또는 필요시 활성화 할 수 있습니까? 흠 ... 이것은 코드를 부 풀릴 수 있습니다. 그러나 벌목은 좋은 것임에 동의합니다. 그러나 하나는 _everything_을 기록해야합니다. 복잡한 데이터를 기록하면 시간과 메모리 비용이 발생할 수 있습니다. 로그를 암호화 하시겠습니까? 텍스트 파일을 사용 하시겠습니까 ...? –

+0

모두 매우 모호한 질문입니다. 귀하의 요구, 응용 프로그램의 종류 등에 따라 다릅니다 (어쨌든 로깅은 CPU 집약적이지 않으며 메모리 집약적 인 것은 아닙니다). –

+0

알아요. 이 질문에 여러 가지 방법이있을 수 있습니다. 로그 생성 (파일?)과 같은 일반적인 방법에 대해 이야기 할 수 있습니다. 그런 다음 로그를 전송하는 좋은 방법에 대해 이야기해야합니다. 그리고 곧 구현 세부 사항에 대해 이야기 할 수 있습니다. 예 : Log() 함수가 있다고 가정 해보십시오. 엄격한 루프에서 Log()를 호출하면 성능에 영향을 줄 수 있습니다. 또한 로그하려는 매개 변수가 생성되는 데 시간이 걸릴 수 있습니다. 이제 모든 것을 기록하면 성능에 영향을줍니다. –

0

자동 단위 및 통합 테스트.

+0

동의, 처음부터 버그를 방지해야합니다. –

+0

누락 된 버그를 수정하는 동안 버그를 추가하지 못하도록하는 것도 중요합니다. –

관련 문제