[SAP] CTS 릴리즈 및 품질/운영 반영 확인하기

 

처음에 CTS 릴리즈와 운영서버 반영이라는 게 쉽지 않았다. 

한번도 해보지 않았고, 혹시나 운영서버를 잘못 건드릴까봐 무섭고 긴장되었다.  

 

그래서 나같은 사람을 위해 CTS 릴리즈와 운영 반영 방법에 대해서 정리해보려고 한다.

# CTS 릴리즈

일단 CTS 릴리즈든 이관이든 CTS 보내주세요든 다 똑같은 말이다.

처음에는 CTS 개념이 어렵고 헷갈렸는데 이제는 이해가 되었다.

 

내가 딱 정의를 내린 건, CTS 릴리즈은 고가의 물건 배송이다.

이 예시를 이해하기 위해 먼저 일반적인 SAP 서버 구성을 봐보자.

 

개발(D) - 품질(Q)- 운영 (P)

 

대부분의 SAP 서버는 위와 같이 구성되어있다.

SAP Logon의 시스템 ID를 보면은 D,Q,P 라는 문자가 포함이 되어있다.

 

D가 포함되면 개발,

Q가 포함되면 품질,

P가 포함되면 운영이다.

 

실무에서 각 서버의 역할은 다음과 같다. 

 

ㅁ 개발(D) 서버

말 그대로 개발 및 TEST를 진행하는 서버이다. 여기서 TEST 데이터도 만들어보고 현업 요청사항에 맞게 이것저것 개발한다.

 

ㅁ 품질(Q) 서버

개발서버에서 수정한 코드를 품질서버에 반영하고 TEST를(현업 or 개발자) 한다.

'왜 TEST를 또 해?' 할 수 있지만 이유는 크게 2가지이다.

 

1) 현업 담당자가 직접 TEST를 하는 경우

- SAP 관리를 외주에 맞기는 경우 현업은 품질과 운영에만 권한이 있는 경우도 있다.

- 또한 프로그램의 실 사용자는 현업이기 때문에 프로세스에 맞게 수정되었는 지, 문제가 없는 지 빠르게 확인할 수 있다. 

 

2) 실 데이터(운영서버 데이터)가 개발서버에 없고 품질에 있는 경우

- 운영 서버의 데이터는 하루에도 많게는 수십만개가 생성될 수도 있다. 해당 데이터를 매번 개발에 반영을 하는 것도 비용    이다.

- 일반적으로 BC팀에게 비용을 지불하고 주기적으로 품질서버에만 운영 데이터를 업데이트 하는 경우가 많다.

 

어떻게 보면은 IT 전공자들에게는 당연할 수 있다. 품질서버의 결론은 코드에 대한 검증을 하는 곳이다.

쉽게 말해, 실제로 운영에 넘겨도 문제가 없는 지 확인하는 절차다.

 

* 하지만 품질 서버가 없는 경우도 존재한다. (서버도 곧 돈이기 때문에… )

   그럴 경우에는 개발에서 개발과 품질의 역할을 둘 다 한다. )

 

ㅁ 운영(P) 서버

실제 현업이 사용하는 서버다. 흔히 회계 감사, 재무제표 등 모든 것들은 운영 데이터를 토대로 한다.

코드 수정 / 데이터 변경 및 삭제 등 대부분 로그가 남기 때문에 모두가 민감하게 받아 드리고 조심스러운 것이다.

 

운영서버에 이러한 로그들이 생기면 감사에서 문제가 되기 때문이다.

 

SAP를 사용하는 많은 이유 중 한 가지는 '신뢰성'이다. 

운영서버의 데이터들을 통해 실제 회사의 재무상태표가 만들어진다. 로그들이 다 남기 때문에 감사에서도 충분히 확인할 수 있고 그만큼 신뢰성 있는 재무상태표가 되기 때문에 대기업에서도 SAP를 사용한다. 

 

근데 만약에 운영서버를 수정했다?? 감사 때 재무상태표를조작에 대한 의심을 가질 수 밖에 없다.

그렇다보니 잘못 건들여서 데이터가 문제 생기면 현업에서는 직접 수정을 하기 어렵다. (현업 ID로 로그가 남으니까) 결국에는 외주사에게 수정을 요청하는데 이것도 다 비용(공수 시간에 포함) 이다.

 

또한 외주사도 잘못 수정하면 책임을 질 수 밖에 없기에... 운영서버는 왠만해서 절대 건들지 않는 편이다. 

 

그런 일이 없도록 개발과 품질에서 현업과 함께 철저하게 검증을 하는 것이 중요하다.

나중에 이슈가 생기면 '너(현업)가 문제 없다고 해서 운영에 반영한거야!' 라는 보호막을 만드는 역할도 한다.

 

이제 다시 고가의 주문제작 물건을 파는 회사에 예시를 들어보려고 한다. 

약간 억지 예시이긴 한데...

만약 어마어마한 금액의 자체제작 물건을 판다고 해보자. 먼저 고객의 요구사항을 정확하게 파악해야 한다.

그리고 금액이 큰 만큼 고객의 요구사항이 잘 반영되었는 지 중간 체크를 하고 최종적으로 고객에게 배송하는

신기한(?) 회사라고 생각해보자.

 

이 상황을 SAP랑 대입에 대입하면 나는 이해하기 좀 수월했다.....

 

주문 제작(개발서버)

1. 고객에게 주문 (현업 요청 사항)이 들어왔다.

 

2. 생산직 직원(개발자)은 그 주문(요청 사항 - 개발 or IMG 세팅) 꼼꼼히 확인하고 공장(개발 서버)에서 맞춤 제작을

    시작한다.

 

3. 생산직 직원(개발자)은 해당 제품의 불량, 작동여부, 마감처리 등(데이터 오류 검증) 나름의 품질 검사(TEST)를 한다. 

 

중간 검사 (품질서버)

4. 우리는 고가의 맞춤제작 회사이기 때문에 고객의 요구사항 대로 맞춤 제작(개발)을 했을지라도 고객에게 한번 중간 점검을 해야한다. 

- 이 사람이 나는 노란색이 좋아! 했지만 이 노란색이 아니라 옅은 노란색! 찐한 노란색! 이럴 수도 있으니까... ( 개발서버의 실 데이터가 없는 경우, 데이터가 다른 경우, 원했던 요구사항이 아닌 경우, 막상 보니까 새로운 문제가 있는 경우 등등의 문제를 방지하는 거다. ) 

 

5. 고객(현업)을 품질공장(품질서버)으로 불러서 '맘에 드세요??'(TEST 요청)하는 거랑 똑같다. 

 

6. 고객이 맘에 든다고 '이렇게 해줘요!(운영반영)' 라고 말하면 우리는 그 물건을 고객의 집으로 배송한다. (문제가 생겨도 책임 소지가 명확해진다.)  

 

고객 전달 (운영 서버)

 

7. 품질 검사를 통과하면 고객(현업)에게 전달(운영서버 반영)한다.

 

 

이해가 잘 될 지는 모르겠지만! 나름 고민했던 예시다…..ㅠ

대부분 블로그에는 개발 → 품질 → 운영 이런 순서의 설명이 많다보니,

SAP를 글로 배운 나는 실제 CTS 릴리즈 시 착각을 했었다. ( 나같은 사람이 세상에 존재하지 않을까 싶어 공유한다...)

 

개발서버의 CTS를 품질서버로 릴리즈(전송)

품질서버에 개발서버의 CTS 반영

품질서버의 CTS를 운영서버로 릴리즈(전송)

→ 운영서버에 품질서버의 CTS 반영

 

실제로는 저런 과정이 아니라, 아래 과정이다. 

 

개발서버 CTS 릴리즈

품질서버의 개발서버 CTS 반영

→ 엇? 문제가 없네?

→ 운영서버에 개발서버의 CTS 반영

 

품질서버에서 따로 CTS를 또 만드는 것이 아니라, 개발서버에 CTS에 수정된 코드가 반영되어있으니, 품질서버에서 TEST하고 해당 CTS를 그대로 반영을 하면 되는 거였다. ( 지금 생각하면 당연한건데... 왜 그땐 그랬을까...)

 

어쨌든... 서론이 너무 길었지만 CTS의 대한 설명은 이정도로 하고 실제로 방법에 대해서 봐보자. 

 

1. CTS 릴리즈하기 (T-CODE: SE09)

SE09에 들어가면 다음과 같은 화면이 나온다.

 

수정가능은 아직 전송을 안한 CTS, 릴리즈는 이미 전송한 CTS 를 조회하는 조회 조건이다.

원하는 조건을 선택하고 Display를 누른다.

 

그러면 해당 화면처럼 조회가 된다.

내가 생성한 CTS를 찾고, CTS 번호 옆의 + 폴더 파일을 클릭한다.

 

 

그러면 한개 이상의 CTS가 하위 노드로 보일거다.

여기서 중요한거는 CTS 릴리즈는 Tree의 아래부분(하위노드)에서 위부분(상위노드) 순서대로 릴리즈를 해줘야 한다. 

 

제일 하위 노드인 1번의 CTS를 클릭하고 3번 버튼(릴리즈)을 클릭한다.

 

그러면 옆과 같은 체크박스 표시가 생길거다.

 

그다음에 2번(상위 노드 CTS) 을 클릭하고 3번을 한번 더 누른다.

그러면 화면 우측 하단에 타이머(?)가 돌아가면서 기달리면 아래와 같은 화면이 나온다.

예시 사진이 마땅한 게 없어서 노션에서 찾아왔는데 빨간색 네모 두 부분만 보면 된다.

 

CTS 릴리즈가 되면 위 화면처럼 빨간색 배경의 CTS 넘버가 보일거다

처음에 나는 내가 뭐 잘못한 줄 알고 땀이 흘렀는데…. 당연한 증상이니 전혀 두려워할 필요 없고 좌측 상단의 새로고침 버튼을 눌러주자.

 

그러면 하늘색으로 돌아오고 정상적으로 CTS 릴리즈가 된 것이다.

 


2. CTS 반영 여부 확인하기

그러면 이제 릴리즈는 알았으니 반영 여부는 어떻게 확인해야 할까??? 

 

총 세 가지 방법이 있는 것 같다.

1) 개발서버 SE09에서 CTS 로그를 통해 확인하기 

2) 반영된 서버의 STMS에 접속하여 반영 여부를 확인하기

3) 내가 수정한거 해당 서버에 들어가서 바뀌었는 지 확인

 

솔직히 3번은 예를들어, 프로그램 코드를 고쳤으면 직접 ABAP Editor가서 변경된 코드가 있는 지 확인하면 되는거다. 

나는 처음에 이렇게 했다... 하지만 반영된 서버에 못들어가는 경우도 있을 수도 있으니...?? 또, 1-2번이 전문적인(?) 느낌이 나니까 알아두자. 

 

 

2-1. 개발서버 SE09에서 CTS 로그를 통해 확인하기

개발서버에서 확인하는 방법은 간단하다.

기존의 CTS 로그화면이 반영전과 이후가 다르다.

 

다시 SE09에 들어가 Display를 누르자. (이때 조회조건 꼭 릴리즈 체크하자)

 

그러면 릴리즈 내역에 내 CTS가 뜰거다.

CTS에 마우스클릭 한번을 하고, 빨간색 박스의 안경잽이를 클릭하자.

저 안경잽이는 CTS 전송 로그를 볼 수 있게 해주는 기능이다.

 

해당 사진은 이미 반영된 CTS의 로그이다. (예시 캡쳐본이 없다..)

빨간색 박스 부분이 존재한다면, 반영이 된거다. 

빨간색 박스의 상위 노드가 'P'가 포함되어있으니 해당 시스템은 운영서버라는 것을 확인할 수 있고,

하위 노드 내역처럼 여러개가 조회가 되고 성공적으로 완료라고 써져있을 거다. 

 

이걸 보고 아 현업에서 반영 했구나! 생각하면 된다. (개발자가 직접 반영하는 고객사도 있다.)

 

2-2. 반영된 서버의 STMS에 접속하여 반영 여부를 확인하기 ( T-CODE :STMS )

반영한 서버로 sap 로그인을 한다. -> 해당 T-CODE를 들어간다.

예시 이미지는 품질 서버로 들지만, 운영도 방법은 똑같다.

좌측 상단의 트럭을 클릭하기

 

 

빨간색 박스의 ‘큐’라는 부분을 보면은 서버의 종류가 나온다.

개발/품질/운영을 사용하는 회사라면은 3개의 큐가 조회가 될 거고,

품질이 없다면 개발과 운영 2개의 서버만 조회 될 것이다.

 

만약 품질에 반영했다면

품질서버 로그인 → 품질서버(Q가 포함된)의 큐 더블클릭

만약 운영에 반영했다면

운영서버 로그인 → 운영서버(P가 포함된)의 큐 더블클릭

 

반영된 서버를 더블클릭하면 2가지 화면이 나온다.

 

 

# 필터가 걸려있는 경우,

해당 필터를 클릭하여 요청 기준으로 필터를 잡고 CTS 번호를 입력해주면 된다.

 

# 필터가 안 걸려있는 경우,

 

CTS 번호 컬럼을 기준으로 필터를 걸면 조회가 된다.

 

 

* 내 CTS 번호로 필터를 걸었는데 조회가 안된다?!

내가 릴리즈를 분명히 했는데 CTS가 조회가 안될 때 있다.

 그때는 당황하지말고 좌측 상단의 새로고침을 클릭해주면 된다.

 

* 그래도 안된다?!

그러면 필터 값에 공백이 포함되어 있을 가능성이 높다.

 

 

CTS가 정상적으로 반영이 되었다면 ICON이 초록색이다.

 

반영이 되지 않았다면은 RC 부분이 다음과 같은 ICON으로 표시된다.

 

이렇게 확인하면 된다.

 

원래 CTS 릴리즈와 반영 방법을 한 번에 포스팅하려 했지만,

생각보다 내용이 길어져서.... CTS 반영 방법은 추후에 올리도록 하겠다...!

 

오늘도 모두 파이팅! 

+ Recent posts