이제 좋은 힘으로 파워포로 구성도 등 만드는 것을 그만두자 PlantUML로 ETL 구성도 같은 것을 쓴다

배경과 과제감



파워 포인트·Google 슬라이드 등으로 만든 자료의 버전 관리는, 여러분 어떻게 하고 있습니까?
동시 편집할 수 있는 Google 프레젠테이션은 아직 로컬로 작업하는 파워포인트는 팀에서의 작업에 정말 적합하지 않다…
게다가 Google 프레젠테이션을 외부 회원에게 공개하지 않았다면 더 이상 프로젝트의 속도를 느끼지 않습니다.
DX는 뭐야? 라고 생각하십니까?
생각이 DX가 아니다...
정말 괜찮아요...
나는 그렇게 생각한다.

해결책



거기서, 구성도등도 소스 코드로 관리해, 거버넌스를 유효하게 하는 것이, 베스트 프랙티스라고 개인적으로는 생각하고 있습니다.
이미 파워 포인트 · Google 프레젠테이션으로 그림 그리기에서 졸업하려고하지 않습니까?

어떻게 관리합니까?


  • PlantUML 소스 코드 관리는 Github 등
  • PlantUML 에디터는 Visual Studio Code ATOM 뭐든지 좋습니다. 좋아하는 것을 사용합시다.
  • PlantUML에서 사용하는 아이콘은 PlantUML Icon-Font Sprites을 사용합니다. 편리하기 때문에.

  • 전제 조건


  • Mac 만 알기 때문에 Mac 전제
  • Homebrew 본체가 설치되었습니다
  • Homebrew에서 plantuml 설치됨
  • 모두 최신 버전을 설치하고 있습니다
  • 편집기 Atom 또는 Visual Studio Code 설치됨
  • 각 편집기에서 PlantUML을 그리는 플러그인 등을 설치했습니다
  • Azure Synapse에서 STORED PROCEDURE에서 ETL 처리를 가정

  • 예(ETL 처리 흐름도)




    @startuml
    title ETL処理フロー図
    scale 1.0
    top to bottom direction
    
    ' hide the spot
    hide circle
    
    ' avoid problems with angled crows feet
    skinparam linetype ortho
    
    !define ICONURL https://raw.githubusercontent.com/tupadr3/plantuml-icon-font-sprites/v2.2.0
    
    !includeurl ICONURL/common.puml
    !includeurl ICONURL/font-awesome-5/database.puml
    !includeurl ICONURL/font-awesome-5/code.puml
    
    FA5_CODE(CODE0,STORED PROCEDURE\nprocessing_flow) {
      FA5_CODE(CODE1,T1 processing flow\n\n一時テーブルT1の処理フロー\n処理の内容などはメモする) {
        FA5_DATABASE(DB1,DB1)
        FA5_DATABASE(DB2,DB2)
        FA5_DATABASE(DB3,DB3)
        FA5_DATABASE(DB,DB)
      }
      FA5_CODE(CODE2,T2 processing flow\n\n一時テーブルT2の処理フロー\n処理の内容などはメモする) {
        FA5_DATABASE(T1,T1)
        FA5_DATABASE(DB4,DB4)
      }
      FA5_DATABASE(T2,T2)
      FA5_DATABASE(DB_ETL,ETL後のDB)
    }
    
    ' リレーション
    DB1 --> DB : LEFT JOIN\nON key
    DB2 --> DB : LEFT JOIN\nON key
    DB3 --> DB : LEFT JOIN\nON key
    CODE1 --> T1
    DB4 --> T1 : LEFT JOIN\nON key
    CODE2 --> T2
    T2 --> DB_ETL
    
    @enduml
    

    PlantUML로 이미지 생성



    Atom 로 코드를 저장하면 이미지가 마음대로 생성되므로 편리합니다.


    소스 코드는 Github 등으로 관리



    소스 코드 관리 방법에 대해서는 기재하지 않지만, Github 등으로 관리하면 좋네요.
    변경 개소가 일목요연. 팀 개발에 최적. 라고 할까, 이 이외의 선택사항은 없다.

    요약



    이제 좋은 점에 파워포인트·Google 슬라이드에서의 문서 관리는 그만두자.
    불모다.

    추가



    아울러, 엑셀 방안지에서의 테이블 정의서나 사양서도, 이 세상으로부터 박멸하고 싶다.
    ↑센스가 없다.
    그 베스트 프랙티스는, Markdown (가 아니어도 좋지만…) 형식의 파일을 HTML등에 좋은 느낌으로 변환해 줘, 역시 소스 코드 관리라고 개인적으로는 생각하고 있다.
    이것은 또 다른 기회에 ...

    좋은 웹페이지 즐겨찾기