버그Bug
Bug
프로그램이 의도한 요구나 기대한 동작과 다르게 작동하게 하는 결함이에요.
쉽게 비유하면
기계 부품이 잘못 맞물려 특정 상황에서 예상과 다르게 움직이는 것과 같아요.
조금 더 자세히
실행이 멈추는 오류뿐 아니라 계산이 틀리거나 저장이 누락되는 문제도 버그예요. 코드, 설정과 구성 요소의 상호작용 등 여러 곳에서 생길 수 있어요.
먼저 기대 동작과 실제 동작을 구분해야 해요. 명확하지 않은 요구나 새 기능 요청은 결함과 구분해 합의할 필요가 있어요.
왜 생겼나요
프로그램의 상태와 입력 조합이 많고 사람이 구현하기 때문에 모든 상황을 미리 완벽히 다루기 어려워요.
어떻게 작동하나요
- 1. 문제 확인 실제 동작과 기대 동작의 차이를 적어요.
- 2. 재현 입력, 순서와 환경을 맞춰 문제를 다시 확인해요.
- 3. 수정 검증 원인을 수정하고 관련 기능까지 영향을 확인해요.
활용 예시
- 할인 금액 계산 오류
- 버튼 중복 클릭으로 주문 중복
- 특정 기기에서 화면 깨짐
버그 vs 디버깅
| 버그 | 디버깅 | |
|---|---|---|
| 뜻 | 의도와 다르게 동작하게 하는 결함 | 문제의 원인을 찾아 수정·확인하는 과정 |
| 예시 | 특정 할인율에서 금액이 잘못 계산됨 | 계산 경로를 추적하고 수정 후 재검사 |
흔한 오해
에러 메시지가 없으면 버그도 없나요?
조용히 잘못된 계산이나 저장이 일어날 수도 있어요. 결과와 업무 규칙을 함께 검사해야 해요.
이렇게 쓰여요
문제 제보
“안 돼요” 대신 “이 환경에서 이 순서로 하면 기대한 A 대신 B가 나옵니다”라고 알려 주면 원인 파악에 도움이 돼요.
관련 용어
함께 보면 좋은 용어
최종 업데이트