Qlik 기준으로 프로젝트 진행 순서를 정리 해 보겠습니다.
다른 프로젝트도 거의 유사 할거 같기는 한데 상세한 점에서는 조금씩 틀리기는 할 거 같습니다.
태블로 프로젝트를 한번 해보고 싶은데 한번 하기가 싶지가 않습니다.
진행 과정을 설명 해놓은게 잘 없더라구요. 생각 나는 순서대로 작성을 하고 계속 업데이트 하겠습니다.
1. 요즘은 처음 시작 하려면 설치 하는게 참 많아요.
- 보안 프로그램 설치 해야 됩니다. 회사마다 조금씩 틀리기는 한데 점점 많아지는거 같습니다.
- 보안 프로그램 설치 하기전에 자신의 데이터가 있으면 백업은 필수 입니다.
- 미리 계정을 만들었으면 하루면 끝나는데, 그렇지 않으면 최대 1주일은 걸리는듯 합니다.
2. 개발 환경 세팅
- Qlik 같은 경우에 웹브라우져 사용해서 개발 하기 때문에 크게 할게 없습니다.
- DB접속 프로그램, 텍스트 에디터, 화면 캡쳐 프로그램, 압축프로그램, 오피스, 아래한글 정도
- 제가 사용 하는 프로그램은 dbeaver, notepad++, 픽픽, 반디집, Msoffice 사용하고, 아래한글 사용하는 회사에서는 아래한글 설치를 해야 겠죠.
- Qlik 서버 설치(운영,개발) 이건 하루면 충분하죠.
- 서버 설치 하기 전에 방화벽 오픈은 필 수 입니다. 포트는 80, 443 오픈해야 되고 80포트를 사용 하지 않을 경우 다른 포트를 알려 줘야 겠죠...
- 방화벽은 Qlik 서버 -> DB서버, 개발자(사용자) -> Qlik 서버, 개발자 -> Windows서버 원격데스크탑
3. 서버 설정
- Windows 사용자 계정 등록(서비스 계정, 개발자 계정, 테스트 사용자 계정)
- Windows 계정 등록 할때 Description에 Qlik에서 어떤 용도로 사용하는지 설명을 달아 놓는게 좋아요. 보안 점검 할때 삭제 해버리는 경우가 있어요.
- SSO를 사용해서 사용자 연동 해서 할 경우는 관련 부서와 협의 해야겠지요.
- Qlik서버를 설치 할때 공유 폴더를 하나 만들어야 하는데 이 부분 설정 할때 Everyone 권한은 빼는게 중요합니다. 보안점검할때 문제가 됩니다.
4. Qlik 서버 Hub, QMC 접속
- Qlik서버가 설치 되었으면 Hub,QMC에 로그인(Windows계정으로 등록된)하고 정상적으로 화면이 나오면 별 문제가 없다고 보시면 됩니다.
- 개발자 노트북에서 Qlik서버(웹브라우져)로 접속 해보면 되는데, 방화벽이 오픈이 되어 있어야 됩니다.
- 로그인 되는데 "No Access Path" 이런 에러가 발생하면 라이센스 할당이 되지 않아서 그렇습니다. QMC에서 사용에 대한 라이센스 할당을 하고 하시면 됩니다.
5. 요구사항에 대한 일정 협의 및 수행계획서 작성
- 프로젝트를 하면 WBS를 작성하는데, 단독으로 할때와 다른 프로젝트 내에서 BI개발을 할때 좀 다르기는 합니다. 하지만 규모에 따라서 많이 다릅니다. 기간이 10개월 일때와 4개월 할때의 WBS내용이 달라지겠죠.
- WBS작성이 되면 수행계획서를 작성 하게 되는데, 제안 내용 일부와 일정을 추가해서 작성하면 됩니다.
- 요구 사항도 정리를 해야 겠지요. 제안 요청 기준으로 요구사항을 정리하고 담당자와 요구사항에 대해서 협의를 하면서 추가 하면 됩니다. 개발 기간이 초과 할 정도의 요구사항은 받지 않는게 좋겠죠.
- 요구 사항은 개발 하면서 추가 되기때문에 어느정도 고려해서 요구사항을 받는게 좋습니다.
6. 요구사항 분석 및 대시보드 화면 구조(레이아웃) 결정 하고 기본 차트 기능 설명
- 처음에 이걸 결정 해놓지 않게 되면 Qlik을 처음 사용 하는 사용자일경우 계속 문제가 생깁니다. 확실하게 되는 것과 안되는것을 정해두고 가는게 좋습니다. 대부분 영업할때 다된다고 하기때문에 ㅎㅎㅎ
- 화면 설계와도 이어지는 부분인데, 프로젝트에 따라서 미리 화면설계가 되어 있는 경우와 프로젝트 중에 요구사항을 보고 화면설게를 해야 되는경 우, 요구사항부터 받아서 화면 설계를 해야 되는 경우 가 있을 수 있습니다.
- 짧은 기간의 프로젝트라면 요구사항, 화면설계가 다 되어 있어야 하겠죠. 이런 프로젝트는 3~4개월 정도 이고, 그렇지 않으면 6개월 이상 개발 기간을 잡아야 할겁니다.
7. 소스 데이터 확인 및 샘플 화면 개발
- 소스 테이터를 일부 가지고 와서 샘플 화면을 한번 만들어 보는게 좋습니다.
- 소스, 타겟, 모델 이렇게 나워서 개발 하지 말고 하나의 앱에 모델링 까지 해서 샘플 화면을 만들어서 담당자(IT,현업)와 소통을 하는게 좋습니다.
- 샘플 화면이 만들어 지면 현업 담당자와 직접 소통을 하고 수정 과정을 거쳐서 개발을 진행 하는게 좋습니다. 그렇게 하지 않으면 개발 완료 된다음에 문제가 많이 생기고 개발 일정도 많이 늦어 집니다. 100%.
8. 화면설계
- 화면 설계문서를 다 만들고 고객 확인을 받고 이런 과정을 다 거치게 될경우 프로젝트 기간이 많이 길어야 할겁니다.
- 가능하면 각 팀(파트)별 현업담당자 이야기를 하고 요구사항 확인 및 개발 화면을 만들어서 보여주는 작업을 수시로 하면서 진행하는게 좋을거 같습니다. 현업담당자가 참여하지 않고 진행 될경우 IT담당자를 통해서 이런 저런 불만이 많이 들어 옵니다.
- 현업담당자와 어느 정도 개발 하면에 대해서 소통이 된 상태에서 IT담당자와는 주로 일정 과 보고 하는 부분만 이야기를 하면 됩니다. 이건 프로젝트 고객사 마다 다르기는 하지만 비슷하지 않을까 생각됩니다.
9. 사용자 권한 및 사용자 연동 방안 결정
- 개발이 진행되면 사용자 권한 문제를 어떻게 할지 결정 하는게 좋습니다.
- 스트림 권한만 주고 스트림내에 있는앱에 대해서는 모든 권한을 가지는 방법이 제일 간단 합니다. 사용자 별로 스트림 권한만 주면 됩니다.
- 화면 별로 사용자 권한을 주어야 한다면 권한이 같은 화면을 같은 앱으로 만드는게 좋은데, 데이터가 화면별로 다르다면 문제가 됩니다. 같은 권한을 가지지만 화면별로 데이터가 다르다면 데이터 기준으로 앱을 나누는게 필요합니다.
- 데이터에 대한 권한이 필요하면 앱을 나누던지 Section Access를 사용 해야 됩니다. 너무 앱을 나누게 되면 관리 하기가 힘들어 지기 때문에 잘 고려해서 결정 해야 됩니다.
- 스트림은 개발과 사용자 테스트 스트림을 나누어 사용자가 자주 들어와서 사용해서 익숙하게 만들어 주는 것이 좋습니다.
- 사용자가 몇명 되지 않으면 Windows 서버 사용자로 등록 해서 관리 하면 되지만, 많을 경우는 연동 방법을 사용자와 잘 협의해서 결정 해야 합니다. 연동할때 권한을 어떻게 부여 할 것인지도 같이 고려해야 됩니다. 담당자가 좀더 쉽게 권한을 줄수 있는 방법을 찾는게 중요 하겠죠. 한 곳만 권한을 주면 자동으로 연동되게 하는게 좋을겁니다.
10. 개발 진행중 화면 리뷰
- 개발 완료 되었을때 화면을 보여주면서 다 했다고 하면 100%문제가 발생합니다.
- 개발 중간에 자주 현업 담당자와 만나서 보여주고 확인을 하는게 좋습니다. 처음엔 개발이 지연 되는 것처럼 보여도 나중에는 어차피 할일을 미리 했다고 보는게 맞을 겁니다.
- Qlik 차트 속성이 태블로처럼 상세하게 조정 할 수 있는것이 아니라서 그런 점을 담당자와 공유 하는게 좋습니다. Qlik이 앞으로 어떻게 가려고 하는지 모르겠지만 망하기 전에 고치는게 좋을거 같습니다.
11. 단위테스트
- Qlik에서 단위테스트라고 하면 조건 선택, 조회, 데이터 검증 정도 일텐데 여기서 좀 느리다고 생각되면 다시 한번 확인을 하는게 좋습니다.
- 속도가 느린 이유는 크게 표현식, 모델이 잘못 되었을 경우 입니다. 엄청나게 데이터가 많아서 느릴 경우가 아니라면 어느정도 해결 방법이 있다고 보는게 맞다고 생각합니다.
- 데이터 검증은 숫자가 너문 크거나 작에 나오면 이상하고 봐야 하고, 같은 데이터를 사용 했는데 차트 마다 값이 틀리면 안되겠죠. 개발자들이 차트에 결과만 나오면 대충 넘어 가는 경우가 많은데 확인을 해야 됩니다. 대시보드에서 보이는 값(KPI)과 상세 차트에서 보이는 값이 같아야 하겠죠.
12. 중간보고
- 중간보고를 거창하게 하는곳도 있고 간단하게 일정 및 요구사항 보고하고 끝나는 곳도 있습니다.
13. 사용자 테스트 및 결과 반영
- 미리 사용자(현업담당자)와 소통을 많이 했다면 화면 상의 수정 보다는 데이터 검증에 대한 수정 사항이 대부분 일테고, 그렇지 않을 경우 이것 저것 수정 사항이 많을 겁니다. 차트 위치부터 사이즈 등등
- 개발 끝나고 처음 화면을 접한 사용자라면 Qlik제품에 대한 불만까지 아주 다양하게 문제점을 제시 합니다.
- 현업에서 불만을 제시하면 IT담당자가 어느정도 처리를 해줘야 하는데 그렇지 못한 경우도 많이 있습니다.
14. 조회 속도 개선 및 모델 수정
- 조회 속는는 표현식, 데이터 건수에 따라 많이 차이가 납니다.
- 조회 속도를 빠르게 하는 방법은 표현식에 사용하는 데이터 건수를 줄이는 방법이 제일 좋겠죠. 화면에 맞게 모델링을 하면 가장 좋기는 한데 , 이렇게 되면 분석이라기 보다는 화면 만들기 위한 모델링이라고 봐야 겠죠.
- 그래서 분석 앱과 대시보드 앱을 따로 만들어서 보여 주는게 좋을거 같습니다. Qlik을 사용해서 분석용도로 사용 하는 고객은 거의 보지 못했습니다. 대부분 만들어진 화면을 가지고 조건만 바꿔 가면서 보는 정도 인거 같습니다.
- 가능하면 모델링을 화면에 맞에 만들고 차트에서 복잡한 표현식을 사용하지 않으면 됩니다.
- 이렇게 할 거면 웹으로 개발 하는게 더 좋은게 아닌가 하는 생각이 들지만, 사용자가 Qlik을 좀더 알고 있다면 새로운 화면을 만들때 웹으로 하는 것보다 훨신 빠르게 만들 수 있겠죠.
15. Task 스케쥴 조정
- Task 만들때 가능하면 스케쥴 순서대로 이름앞에 번호를 붙여 주면 관리하기가 좀 편합니다. 중간 준간 추가 되는 스케쥴이 있을때 번호 떔에 불편 하기는 하지만 가능한 순서대로 보이게 하면 좋습니다. 나중에 인수인계 할때 설명하기도 편하구요.
- 크게 소스, 타겟, 모델, 사용자로 나눠서 보기 좋게 하면 좋습니다. Qlik에서 나중에 폴더 기능도 좀 만들어 줬으면 좋겠네요. QlikView에는 있습니다.
- 소스 데이터를 가지고 올때 순서대로 하나씩 돌리면 시간이 많이 걸리니까 몇개를 쪼개서 병렬로 돌리는게 좋습니다. 서버 성능에 따라 조정 하시면 될거 같네요.
- 나워진 소스에 따라 타겟도 병렬도 같이 돌리면 되겠죠. 타겟 앱에서 사용하는 테이블 소스앱이 실행이 끝나면 실행되게 하면 되겠죠.
- 이런 작업을 Task가 많을 경우에는 여러번 변경 하면서 끝나는 시간을 최대한 당겨야 합니다. 시간이 지날수록 데이터가 쌓이면서 느려지거던요.
- 데이터가 사이즈가 크서 증분적재가 오래 걸릴 경우 데이터도 년도별로 나누던지 해야 됩니다. 옜날 데이터가 업데이트 되는 경우가 거의 없는데 모든 데이터를 증분 적재 하는데 읽고 쓰고 할 필요는 없겠죠.
16. 완료보고
17. 오픈 및 안정화 모니터링
18. 보안점검
'Qlik' 카테고리의 다른 글
Qlik에서 null 값이 있는 숫자 합계 (0) | 2023.04.18 |
---|---|
Qlik Master Calendar (0) | 2023.04.17 |
Qlik 데이터 연결 및 모델링 (0) | 2023.04.12 |
Qlik Sense 기본 theme 변경 (0) | 2023.04.11 |
Qlik multi-node 서버 (0) | 2023.04.11 |