가장 큰 소프트웨어 버그 및 기술이 실패합니다
소프트웨어 테스트의 목적은 버그가 사용자의 손에 도달하기 전에 버그를 찾는 것이지만, 가장 엄격한 테스트 절차가 잘못 될 것이라는 의미는 아닙니다. 당황스러운 실수부터 치명적인 붕괴 시스템에 이르기까지 이러한 사례는 적절한 테스트 절차가 얼마나 중요한지를 집으로 몰아 넣을 것입니다.
이 블로그는 테스트 문제로 인한 소프트웨어 문제 및 기술 문제에 대한 가장 충격적인 예와 우리가 배울 수있는 교훈에 대해 논의합니다.
1. 줌의 보안 결함 (2020)
개요
이 회사는 전염병의 출현에서 사용이 급증했을 때 심각한 보안 및 개인 정보 보호 문제가있었습니다.
문제
보안 프로토콜에 대한 테스트가 충분하지 않아 승인되지 않은 개인이 악용 한 취약점이 생겼습니다.
영향
모든 비판과 감사를 고려하여 회사는 보안을 수정했습니다.
교훈을 배웠습니다
보안 테스트는 애드온 활동의 일부가 아닌 지속적인 프로세스 여야합니다. 보안 감사뿐만 아니라 정기적 인 침투 테스트와 통합되어야합니다.
2. Windows-10 업데이트 버전 1809 (2018)
개요
Microsoft가 제공 한 Windows 10 업데이트로 인해 여러 사용자가 데이터 손실에 직면했습니다.
문제
업데이트 프로세스에 결함이 있었기 때문에 사용자 파일은 즉시 정화되었습니다.
영향
Microsoft의 브랜드는 롤백을 강요하고 영향을받은 사람에게 사과 할 때 움켜 쥐었습니다.
교훈을 배웠습니다
이 주요 점검을 배치하기 전에 테스트를 거쳐야하는 모든 사용자 시나리오가 있으며, 폴백이 적절해야합니다.
3. Amazon Web Services (AWS) 다운 타임 (2020)
개요
클라우드 서비스 제공 업체에 의존하는 일부 애플리케이션 (주로 응용 프로그램)은 광범위한 가동 중지 시간으로 인해 다운되었습니다.
문제
낮은 테스트 임계 값으로 인해 실수로 서비스 관리 콘솔이 완화 될 수 있습니다.
영향
이로 인해 전 세계 수백만 개의 사업체와 사람들에게 서비스 거부가 발생했습니다.
교훈을 배웠습니다
자동 회귀 테스트를 포함 할 수있는 구성 변경에 대한 강성 테스트 환경의 가능한 효과를 고려하십시오.
4. Healthcare.gov 런칭 (2013)
개요
HealthCare.gov 웹 사이트는 기술 결함 덕분에 미국 정부의 손에 초기 발사 실패에 직면했습니다.
문제
테스트는 그다지 효과적이지 않았으며 사이트를 매우 자주 충돌로 노출 시켰으며 사용자로부터 사이트를 통해 제출 된 응용 프로그램을 처리 할 수 없었습니다.
영향
수백만 명의 사용자가 실패한 실패로 화를 냈으며 큰 정치적 반응도있었습니다.
교훈을 배웠습니다
UAT (사용자 수락 테스트)에 더 중점을두고 롤아웃하기 전에 잠재적 인 과제를 극복하기 위해 변경할 때 실제 사용자에게 공간을 제공하십시오.
5. Knight Capital Group Trading Glitch (2012)
개요
거래 알고리즘의 실패로 인한 심각한 손실은 구현 및 시작의 오류와 관련이 있습니다.
문제
구현 된 새로운 시스템이 적절하게 테스트되지 않았기 때문에 구매 및 판매 된 수백만 주가 유효하지 않은 것으로 발행되었습니다.
영향
인수하는 회사의 비용은 4 억 4 천만 달러입니다.
교훈을 배웠습니다
시뮬레이션 환경을 사용하고 완전한 회귀 테스트를 수행하여 실제 거래 전에 문제를 시뮬레이션하십시오.
6. 화성 기후 궤도 (1999)
개요
NASA는 부적절한 단위 변환으로 인해 화성 기후 궤도를 잘못 배치했습니다.
문제
한 그룹이 “메트릭”대신 “제국”측정을 사용한 후 소프트웨어 결함이 발생했습니다. 이로 인해 우주선은 NASA의 기대에 부합하지 않는 방식으로 탐색했습니다.
영향
Orbiter의 몰락은 과학 연구를 정체 시켰으며 거의 3 억 7,660 만 달러에 달했습니다.
교훈을 배웠습니다
모든 팀이 동일한 단위와 표준을 사용하도록하십시오. 매우 중요한 이러한 차이는 상세한 통합 테스트를 통해 포착 할 수 있습니다. 모든 팀이 동일한 단위와 표준을 사용하도록하십시오. 매우 중요한 이러한 차이는 상세한 통합 테스트를 통해 포착 할 수 있습니다.
결론
이러한 사례는 소프트웨어 테스트가 기술의 모든 발전에도 불구하고 과학의 예술임을 상기시켜줍니다. 실수로부터 배우면 테스트 절차를 개선 할 수 있습니다. 따라서 당사의 제품은보다 신뢰할 수 있으며 결국 사용자에 대한 경험이 더 나을 수 있습니다.
소프트웨어의 환경이 오늘날 그렇게 복잡해 졌기 때문에 테스트에는 장치, 통합 및 사용자 수용 가능성 테스트가 포함되어야합니다.
Post Comment