mondegreen

[Mendix Rapid] Microflow가 필요한 이유 본문

Mendix/Academy 및 Docs

[Mendix Rapid] Microflow가 필요한 이유

앙갱 2024. 5. 29. 12:41
반응형

멘딕스는 기본적인 CRUD와 같은 로직을 내장하고 있다. 하지만 우리 고객들은 그러한 단순한 것을 넘어 보다 복잡하고 여러 논리 판단을 거친 작동을 요구한다. 이를 구현하기 위해 개발자는 여러 데이터를 확인하고 논리 판단을 통해 어떠한 결과를 내는 코드를 작성하는 것이다. 

혼자 개발한다면 코드가 복잡하든, 로직이 조금 꼬여있든, 나만 이해할 수 있는 애매한 명명의 변수를 사용하든 전혀 상관없다. 하지만 한 조직에 속해 개발하는 경우 우리는 팀으로 일하게 되며 내가 해당 업무를 떠나 다른 동료에게 넘겨주는 것이 일반적이다. 따라서 다른 사람이 이해하기 쉬운 코드를 명료하게 작성하는 것이 매우 중요한데 멘딕스는 이러한 부분을 시각화된 마이크로플로우로 해결하고 있는 것이다. 비단 개발자 뿐만 아니라 비즈니스 담당자도 충분히 로직을 이해하고 의견을 제시하며 개선할 수 있도록 말이다. 

시각적으로 모델링하기 때문에 복잡한 로직도 비교적 쉽게 구현 가능하며 이렇게 정의된 플로우는 모듈화되어 여러 곳에서 재사용 가능함에 따라 개발 효율성과 유지보수성을 높인다는 장점이 있다. 또한 마이크로플로우는 디버깅과 로깅 기능을 제공함에 따라 문제 발생 시 원인 파악과 해결에 용이하다. (이 부분은 좀 더 확인해봐야 할 것 같다)

마이크로플로우는 언제 필요할까?

1. 멘딕스에서 기본적으로 제공하는 로직을 수정하거나 확장할 때,
    예를 들어 새로이 객체를 생성하는 버튼이지만 생성하기 전 유효성 검증이 필요한 경우가 있다.

2. 특정한 프로세스에서 여러 논리 판단 이후 기능을 수행할 때,
    예를 들어 교육생이 필수 이수 과목을 들은 후에 특정 과목을 수강할 수 있도록 로직을 짜거나   
    현재 시기에 맞춰 특정 훈련의 시작일을 자동으로 정해줄 경우가 있다.

3. 다른 시스템과 DB, 웹 서비스와 같이 외부 시스템과 통합하고자 할 때

 

위와 같은 이유로 사용자의 로직을 마이크로 플로우로 정의할 수 있는 것이다.
아래는마이크로플로우와 나노플로우, 워크플로우를 비교한 것이다.

구분 마이크로플로우 나노플로우 워크플로우
내용 - DB에 인터넷 연결이 필요
- 어플리케이션 서버에서 작동
- 고급 DB 기능 사용 가능
- 단일 트랜잭션 실행
- 자바로 실행
- 인터넷 연결 불필요
- 클라이언트 단에서 실행되어 빠름
- 각 기능을 점진적으로 실행
(이전 실행 액션 취소 불가)
- 자바스크립트로 실행
- 대규모의 프로세스에 적합
- 2명 이상의 사용자간 상호작용 가능
- 여러 입력 값 대기 가능

 

다음 글에서는 이 마이크로플로우 적용 사례를 알아보고자 한다.

반응형