11번 인터페이스의 수정된 코드를 확인하고 일부 수정해서 정리해줬는데
예비군 중 인터페이스 특수 분기 처리 정도만 추가되었기 떄문에 금방 할 수 있었다.
이후 메일을 확인했는데 예비군 딱 하루만 다녀왔는데도 불구하고
몇달간 연락이 없던 곳까지 여기저기서 문의가 날아와 있었다.
특히 제일 황당했던 것은 몇달 전에 마무리한 인터페이스였는데
이제와서 인터페이스 오류 같다고 일부 값이 null로 넘어온다는 문의가 왔는데
하나라도 정상적으로 가면 권한 등의 문제는 아니고 실제 필드가 없는 문제가 뻔했다.
그냥 해당 필드 값을 확인하라고 답변하고 말려고 하다가
어차피 한번 답변에는 최소 1시간의 유지보수시간이 측정되기 때문에
조금 더 자세하게 실제로 null이 나온 값과 null이 아닌 값을 비교해보기로 했다.
실제로 null과 null이 아닌 값들이 교차로 나오는 데이터들이 발견되었는데
null이 나온 레코드를 힘겹게 찾아보니 역시나 필드에 값이 들어있지 않았다.
사실 값이 들어있지 않은 정도가 아니라 해당 필드 자체가 없었는데
하나의 개체에서 여러개의 레코드 타입을 만들어 둔 다음
레코드 타입별로 페이지 레이아웃을 관리하는 것 같았는데
거기에서 제대로 필요한 필드들이 관리되지 않아서 문제가 발생한 것이었다.
여태까지 조용했다는 것은 인터페이스 개발 당시나
그 후 내부 테스트 및 실제 사용에서 문제가 없었다는 것이 뻔했는데
이제와서 왜 문제가 되는지 수정자가 누군지 원인을 찾아봤는데
모든 페이지 레이아웃 및 레코드 타입을 고객사 내부직원이 다 건드린 것을 확인할 수 있었다.
일단 책임소재는 명확하기 떄문에 1시간이 되지 않아서 조금 더 자세하게 원인을 정리했고
필요한 필드들을 필요한 레코드 타입에 맞춰서 페이지에 노출만 시키고
값을 넣으면 된다는 내용에 대해 정리해서 답변하고
모든 변경에 찍혀있는 내부 사용자의 이름이 있는 수정자 목록을 같이 사진으로 전달했다.
이후 주 담당 고객사쪽 업무를 하려고 했는데
팀장님이 갑작스럽게 테스트클래스 생성 지원 요청을 하셨고
해당 클래스들의 목록을 받아서 일단 테스트클래스는 이번주까지라고 해서 정리만 해뒀다.
월요일에 진행하다가 내 담당이 아니라 포기했던 인터페이스 배포도 문제였는데
생성자분에게 문의했더니 그냥 직접 만들라는 답변을 받았고
필요한 필드 하나를 위해서 연관된 필드들을 계속 넣다보니 결국 98개의 필드가 올라가버렸고
개체도 6개나 생성해야 해서 점점 만들수록 어이가 없었다.
일반적으로 개발을 할 때 운영에 동시에 개체나 필드를 생성하는데
개체에 필드를 정리하지도 않고 그냥 다 올려버릴거면
생성 단계에서 만들어가면서 했어야 하지 않나 싶었는데
일단 2시간 이상 필드 생성 작업에 매달린 끝에 개체, 필드를 배포했고
딱 하나의 그 필드가 추가되자마자 12번 인터페이스는 바로 배포되었다.
중간에 팀원분이 인터페이스 결과 반환 시 필드값 변경이 미적용되는 것에 대한 문의를 하셨는데
이런저런 가설 끝에 해결했다고 생각했지만 알고보니 해결된 것이 아니라 다른 곳에 작성하고 있었던 문제였다.
일단 급한 불들을 껐기 때문에
오전에 진행했던 예전 프로젝트의 유지보수 사례를 등록했고
월요일에 진행한 주 프로젝트의 케이스 또한 등록했다.
이후 팀장님이 요청하셨던 인터페이스의 테스트클래스를 작성했고
하나는 바로 운영에 배포했는데 다른 인터페이스도 운영에 배포될 수 있게 수정을 마쳤고
6시 20분쯤 정리하고 퇴근했다.
(1).백준 15727번 조별과제를 하려는데 조장이 사라졌다는 거창한 문제 소개와는 다르게
단순히 분당 5씩 이동할 수 있는 사람이 몇분만에 목표지점에 도착할 수 있는지를 묻는 문제였고
ceil을 사용해서 거리를 5로 나눈 값을 올림처리로 출력해서 해결했다.
const input = Number(`12`)
console.log(Math.ceil(input/5))
'회고' 카테고리의 다른 글
[개발일지] - 424 (0) | 2024.08.30 |
---|---|
[개발일지] - 423 (0) | 2024.08.29 |
[개발일지] - 421(예비군) (0) | 2024.08.27 |
[개발일지] - 420 (0) | 2024.08.26 |
[개발일지] - 419(주말) (0) | 2024.08.25 |