itsm_ysm/docs/SR_BACKLOG_20260708.md

87 lines
11 KiB
Markdown

# ITMS 고객(KIC) 수정요청 백로그 — 2026-07-08 접수 / 2026-07-19 처리
> 근거: `docs/ITSM 고객 수정 요청 체크리스트_20260708.xlsx`(체크리스트 25건 + 이미지) · `docs/ITSM 기능개선 및 장애처리_V1.1_20260707.pptx`(기능개선 11 + 장애처리 4) · 소유자 추가지시 F12(브랜딩)
> 대상: URP ITMS 모노레포(`workspace/itms`) — auth / api / front / common
> 판정 구분: **즉시구현**(코드로 바로 처리) · **설계필요**(신규기능·상태전이 등 설계 선행) · **검토제안**(정책 판단 필요, 안전기본으로 처리) · **DB의존**(런타임 DB/스토어드프로시저/템플릿 데이터 필요)
---
## A. 체크리스트 25건 (xlsx)
| # | 구분 | 요약 | 대상 모듈·파일 | 난이도 | 판정 | 상태 |
|---|------|------|----------------|--------|------|------|
| 1 | 로그인 | 잠긴 계정 비밀번호 초기화 차단 + 메일 미발송 결함 | api `baseapi/main/MainController`·`itmsapi/sys/UserManageController` / front `PopPasswordReset.jsp` | 중 | 즉시구현 | 완료 |
| 2 | 로그인 | 잠금 메시지 문구 교체(시스템관리자 성명·호칭 동적) | front `basefront/MainController` + `custom.adminName/adminTitle` | 하 | 즉시구현 | 완료 |
| 3 | 로그인 | 아이디/패스워드 오입력 메시지(잠금과 구분) | front `basefront/MainController` | 하 | 즉시구현 | 완료 |
| 4 | 사용자관리 | 사용자 조회 시 원소속 부서로 표기 | api `UserSearchMapper.xml`(`TB_TASK_USER_INFO.ORG_ID`) | 중 | DB의존 | 보류 |
| 5 | 서비스데스크 | SR 프로세스 명확화(결재라인 처리자 포함·반려 이전단계 복귀·단계별 메일 7종) | api `SvcDeskService`·`SvcDeskMapper.xml`(스토어드프로시저)·`CmmUseController` 메일 / DB 템플릿 `SM_003` | 상 | 설계필요·DB의존 | 부분 |
| 6 | 서비스양식 | 빈양식 외 양식 작성(장애/이슈보고), SR기본요청양식, 서버점검양식 문구/행높이 | api 서비스양식 DB(`CM_SERVICE` 템플릿) | 중 | DB의존 | 보류 |
| 7 | 이슈보고 | "등록" 버튼 → "임시저장" | front `Report*Insert.jsp`·`Report*CopyInsert.jsp` | 하 | 즉시구현 | 완료 |
| 8 | 이슈보고 | 중복 "새로만들기" 버튼 제거 | front `ReportIssueDetail.jsp` | 하 | 즉시구현 | 완료 |
| 9 | 서비스데스크 | 조치예정자 사용자 직접선택 차단(신청) + 접수자/접수일시 서버제어(접수) | front `SvcDeskReqInsert.jsp` / api `SvcDeskController.addIncident` | 중 | 즉시구현 | 완료(완료요청일시 유지) |
| 10 | 서비스데스크 | 등록/승인요청 vs 등록 버튼 구분("등록"→"임시저장") | front `SvcDeskInsert.jsp`·`SvcDeskCopyInsert.jsp` | 하 | 즉시구현 | 완료 |
| 11 | 서비스데스크 | 텍스트 줄바꿈이 밀리는 현상 | front CSS(해당 화면 재현 필요) | 중 | 검토제안 | 보류(재현필요) |
| 12 | 서비스데스크 | 입력값 길이 예외처리 + "장애페이지 후 등록되는 이중 결함" | api `SvcDeskController`·`SvcDeskReqController` / front `SvcDeskController`·JSP | 중 | 즉시구현 | 완료 |
| 13 | 서비스데스크 | 에디터 높이 무한 증가 → 최대높이/스크롤 | front `tinymce_uritms_setting.js` | 하 | 즉시구현 | 완료 |
| 14 | 서비스데스크 | 신청번호 부분검색(와일드카드) | api `SvcDeskReqMapper.xml` | 하 | 즉시구현 | 완료 |
| 15 | 서비스데스크 | 결재 단계별 알림 발송 여부 점검 | api `CmmUseController`/`HtmlEmailUtil` + batch 발송 · SMTP | 중 | DB의존·설계 | 부분(SR5와 통합) |
| 16 | 서비스데스크 | 일반 사용자는 본인 신청건만 조회 | api `SvcDeskReqController`·`SvcDeskReqMapper.xml` | 중 | 즉시구현 | 완료 |
| 17 | 서비스데스크 | 접수번호 노출 필요성 검토 | front 신청 목록/상세 JSP | 하 | 검토제안 | 검토(유지 권고) |
| 18 | 서비스데스크 | 서비스데스크 메뉴 등록 버튼 일반 사용자 비노출 | 메뉴 권한(DB) / front `SvcDeskList.jsp` | 중 | 검토제안 | 검토(메뉴권한 권고) |
| 19 | 공통 | 오타 "없무권한" → "업무권한" | front `error/errorNoAuth.jsp` | 하 | 즉시구현 | 완료 |
| 20 | 공통 | "인스턴트"(인스던트/인시던트) → "서비스" 용어 통일 | front 전 화면(48파일 172건) | 중 | 즉시구현 | 완료 |
| 21 | 업무게시판 | 메인 카드 vs 메뉴 진입 화면 상이 | front `taskPortlet2.jsp`(고정 bbsId) vs 메뉴(DB) | 중 | 검토제안·DB의존 | 검토(정렬 권고) |
| 22 | 시스템관리 | 자동로그인 시 시스템관리 메뉴 필요성 | 메뉴/권한(DB) | 하 | 검토제안 | 검토(비노출 권고) |
| 23 | 메인페이지 | 메인 필요성 + FOOTER 레이아웃 | front `IncFooter.jsp` | 하 | 검토제안 | 부분(오타수정·유지 권고) |
| 24 | 메인페이지 | 통합검색 결과 권한 필터 | api `/api/v1/search` 매퍼(권한 컨텍스트) | 상 | 설계필요 | 부분(권고) |
| 25 | 메인페이지 | 보고서 현황 카드 텍스트 잘림 | front `MyReportsPortlet.jsp`/CSS | 하 | 검토제안 | 부분(권고) |
### SR#5 세부 분해 (SR 관리 업무 프로세스 명확화)
프로세스: **등록 → 접수 → 처리 → PM확인 → KIC담당자 최종확인**, 반려 시 이전 단계 복귀.
| 하위 | 내용 | 판정 | 상태 |
|------|------|------|------|
| 5-a | 접수 시 결재라인에 **처리자(조치예정자)** 포함(현재 미포함 → 승인 후에도 처리 가능) | 설계필요 (결재 시맨틱 변경) | 보류(설계) |
| 5-b | 반려 시 이전 단계 복귀(PM반려→처리, KIC반려→PM확인) | DB의존 (`PROC_REJECT` 등 스토어드프로시저가 저장소 밖) | 보류(DB) |
| 5-c1 | 등록 메일: 발신 등록자 / 수신 PM / 제목 `[ITSM] SR(제목) 등록` | DB의존 (템플릿 `SM_003`) + 라우팅 | 부분 |
| 5-c2 | 접수 메일: 발신 접수자(PM) / 수신 처리자 / `처리 요청` | DB의존·라우팅(`getIncidentMailReciever` type=1/3) | 부분 |
| 5-c3 | 처리 메일: 발신 처리자 / 수신 PM / `처리 완료` | DB의존 (type=6) | 부분 |
| 5-c4 | PM확인 메일: 발신 PM / 수신 KIC담당자 / `종결 요청` | DB의존 (type=4) | 부분 |
| 5-c5 | KIC종결 메일: 발신 KIC / 수신 요청자 / `종결 알림` | DB의존 | 부분 |
| 5-c6 | PM반려 메일: 발신 PM / 수신 처리자 / `반려` | DB의존 (type=5) | 부분 |
| 5-c7 | KIC반려 메일: 발신 KIC / 수신 PM / `반려` | DB의존 | 부분 |
> **구현 메모(5):** 메일 발송 인프라는 `HtmlEmailUtil.SendAlarmInsert`가 알림큐 테이블에 적재하고 **batch 모듈**(`MailKaTalkSend*Job`)이 실제 SMTP 발송한다. 코드상 수신자 라우팅(type 1~7)은 존재하나, 각 단계 제목/본문은 DB 공통코드 템플릿 `SM_003`에 있어 **문구 확정은 DB 데이터 변경**이 필요하다. 상태전이(반려 시 복귀)는 `PROC_APPROVAL/PROC_REJECT/PROC_REQ_APPROVAL` **스토어드프로시저**에 있고 저장소에 정의가 없어 **DB에서 수정**해야 한다. 처리자 결재라인 포함(5-a)은 접수측 `approvalsList`에 조치예정자를 추가하는 설계 변경으로, 승인 시맨틱에 영향이 커 별도 승인 후 진행 권고. 코드로 처리한 것: 등록 커밋 이후 메일 발송 실패가 사용자 오류화면으로 노출되던 문제(→ SR#12 try/catch).
---
## B. 기능개선 11 + 장애처리 4 (pptx) + F12(브랜딩)
| # | 구분 | 요약 | 대상 | 판정 | 상태 | 중복매핑 |
|---|------|------|------|------|------|----------|
| F01 | 기능개선 | 보고서 양식명 전체(요약) 표시 | front `ReportList.jsp` (+select 네이티브 truncation 잔존) | 검토제안 | 부분 | |
| F02 | 기능개선 | 다수 문서 선택 후 프린트·승인(관리자·kic_it) | front `ReportCheckList.jsp` 신규 체크박스+배치호출 | 설계필요 | 보류 | |
| F03 | 기능개선 | 서비스신청 시 서비스 항목 선택 제거→SR기본요청양식 고정 | front `SvcDeskReqInsert.jsp` | 즉시구현 | 완료 | SR#6 연관 |
| F04 | 기능개선 | 권한그룹관리 가입상태 표시 + 삭제상태면 등록여부 자동 N | api `AuthorGroupMapper.xml` union에 가입상태 컬럼 추가 | 설계필요·DB검증 | 보류 | |
| F05 | 기능개선 | 업무사용자관리 그룹아이디 기본값 KIC | front `UserSelectUpdt.jsp` | 즉시구현 | 완료 | |
| F06 | 기능개선 | 게시판 제목 클릭 진입 | front `ReportCheckList.jsp`(제목 링크) | 즉시구현 | 완료 | |
| F07 | 기능개선 | 사용자관리 메뉴명 통일 + 불필요 기능 제거 | DB `TB_MENU_INFO` 메뉴명 | DB의존 | 보류 | |
| F08 | 기능개선 | 권한명별 포틀릿(엔지니어·빈권한은 자산현황·보고서 처리현황 비노출) | api 포틀릿 신규 role 차원 | 설계필요 | 보류 | |
| F09 | 기능개선 | 관리자 게시물·댓글 삭제 권한 | front `NoticeInqire.jsp` + `BBSAdminManageController` | 즉시구현 | 완료 | |
| F10 | 기능개선 | 게시판 목록 조회수·댓글수 표기 | api `BBSAdminManageMapper.xml` + front `NoticeList.jsp` | 즉시구현 | 완료 | |
| F11 | 기능개선 | 그룹웨어 자동 로그인 JWT(Token) 방식 | 그룹웨어→ITMS SSO(기존 `ssoDirectlogin.do` 계약 확장) | 설계필요 | 부분(파라미터 보류) | SR#22 연관 |
| F12 | 브랜딩(소유자지시) | 로고·파비콘 업로드/교체 관리(KIC) | front `BrandingController`·`brandingManage.jsp`·`SecurityConfig`·레이아웃/헤더/로그인 JSP | 중 | 즉시구현 | 완료 |
| D01 | 장애처리 | 게시판 뒤로가기 '양식 다시 제출' 오류 | front `NoticeList/NoticeInqire`(POST→GET/PRG) | 설계필요 | 보류(권고) | |
| D02 | 장애처리 | 조회조건 유지(목록 복귀 시 검색조건 초기화) | front `ReportCheckUpdate/CopyInsert.jsp` 반환경로 | 검토제안 | 부분(권고) | |
| D03 | 장애처리 | 비밀번호 오류 vs 5회 잠금 구분 + 사번형 ID(2220105) 초기화 결함 | front `basefront/MainController` + api 초기화 흐름 | 즉시구현 | 완료 | **SR#1~3 통합** |
| D04 | 장애처리 | 검색 후 페이지네이션 시 검색조건 소실 | front `AuthorGroupManage.jsp`(pagination jsFunction) | 즉시구현 | 완료 | |
> **F11(JWT SSO) 메모:** 그룹웨어 측 발급 JWT 계약(키/클레임/발급경로)이 미확보 상태. ITMS측 수용 훅은 기존 `/main/ssoDirectlogin.do`(SecurityConfig permitAll)가 존재하므로 이를 JWT 수용 엔드포인트로 확장하는 설계로 정리하고, **연동 파라미터(서명키·iss·클레임 매핑)는 보류**로 기록한다. 실구현은 그룹웨어 계약 확보 후.
---
## 요약
- 즉시구현/완료: SR 1·2·3·7·8·9·10·12·13·14·16·19·20 + F03·F05·F06·F09·F10·F12 + D03·D04 (+ F01 부분)
- 설계필요·DB의존·검토(부분/보류): SR 4·5·6·11·15·17·18·21·22·23·24·25 + F02·F04·F07·F08·F11 + D01·D02