본문 바로가기
LabVIEW 랩뷰/LabVIEW 자격증

LabVIEW CLD, CLA취득을 위한 개발자 팁 [영상 요약]

by Design for everyone 2020. 3. 31.

LabVIEW 국제인증시험: CLD 및 CLA 취득을 위한 개발자 팁

본문은 myLabVIEW의 NIDays 2015 영상에 대한 내용을 요약한 것으로 상세 내용은 영상 참고 

 


CLD

1. CLD 시험 문제 살펴보기


(문제지 섹션1) '일반 지시 사항' 숙지

  • SubVI 사용

  • 타입 정의 컨트롤

  • 상태 머신

  • 로컬 변수, 글로벌 변수 사용 최소화

  • CPU 100% 사용 금지(**while 루프 안에, 타이밍함수 사용으로 해결) => 시간은 상관 없이, cpu가 쉴 수있는 시간을 줘야 함, 100msec 이내 응답

  • 문서화  

(문제지 섹션 2) '어플리케이션 문제'가 중요

  • 4시간동안 쉴 틈없이 해야지 문제에서 요구하는 기능을 구현할 수 있음

  • 일반 지시사항을 미리 숙지하고 문제 페이지로 가야지 시간을 절약할 수 있음(일반지시시항을 읽을 시간이 없음)

 


 

2. CLD 취득에 유용한 팁

 

2.1. 문서화에 대한 점수를 챙겨라

  • 채점기준(프로그래밍 스타일 15점 / 기능 15점/ 문서화 10점)  

  • Main VI와 subVI 내의 적합한 와이어에 라벨 부착

  • 각 알고리즘에 대한 설명

  • Main VI와 subVI 에 대해 VI프로퍼티>>문서에 설명 포함

  • 프런트패널 컨크롤과 인디케이터에 대한 팁 상자와 설명 추가(properties - documentation)

  • 상수에 라벨 부착(주석 달기=>블록다이어그램에 라벨링 )

2.2. 샘플 문제를 숙달하라

  • 샘플문제 다운로드(문제는 다르지만 유형은 같기 때문에) 

      - 보일러 컨트롤러
      - 스프링클러 컨트롤러
      - 자동 금전 출납기
      - 자동차 세차기

 

  • 4시간 알람을 사용하여 실제 시험과 유사한 상황으로 실습 진행


2.3. 주요 기능 패턴을 익혀라 (최소한 5개중에서 3개는 나옴)

      - 타이밍 기능 

     - 파일 쓰기/읽기
     - 데이터 처리
     - 시퀀스 구조
     - 에러 핸들링

 

  • 기능 실습 샘플 다운로드  

     - 기능 실습으로 패턴을 익혀라 

 


2.4. 일부 기능을 버릴 건 버려라

 

  • 실제로 모든 기능을 구현하는 것은 쉽지 않음

  • 중요한 핵심 기능이 아닌 걸 구현하다가 화살표가 깨져서 run이 안되는 채로 제출하는 것은 치명적임 

  • 핵심 기능은 수행되고 이외의 것은 이후에 시간이 있을 때 신경 쓰도록(파일저장 포맷 등)

  • 중요한 메인 기능을 항상 구현하도록 하고, 화살표가 항상 run이 되어야 함. 이것이 가장 중요함 (기능 15점)

프로그래밍 스타일(15점)은 state machine(상태머신)으로 하면 어느정도 점수를 다 가져갈 수 있음

 


2.5. SubVI 아이콘은 간략하게 한다.

  • 디자인에 큰 신경은 쓰지 말자(요구하지 않음)

  • 간략한 텍스트 사용 (아이콘 편집기에서 레이어에서 지운다음, 템플릿 선택 후 아이콘 텍스트 작성 => 기능(function)의 의미만 담기게)

  • SubVI 기능을 상징적으로 표기

 


 

CLA

3. CLA 시험 문제 살펴보기

 

  • 시험 세부사항 숙지(시험 준비 가이드)

      - Main VI, SubVI, 사용자 컨트롤로 구성되는 어플리케이션 프레임워크 개발
      - 프로젝트 계층구조 개발
      - 상세 기능 로직은 포함하지 않음 (CLA는 기능 구현이 목적이 아님)
      - 프로세스 간 의사전달 메커니즘 개발
      - 에러 핸들링 및 종료 과정 개발
      - 문서화: 요구조건의 ID 기입 (*가장 중요)

 

  • CLA 샘플 문제 확인

 

 

4. CLA 취득에 유용한 팁

 

4.1. 요구조건 형식을 반드시 지켜라

  • 요구조건 태그 (ID 관련) => 주어진 형태대로 VI 라벨링을 해야함

  • USB 메모리에 제공된 *텍스트 이용

  • 복사 및 붙여 넣기로 라벨 작성 : 괄호 주의 "[ ]",  대소문자 주의 


4.2. 모든 요구조건을 다루도록 하라

  • 실행 화살표가 깨져있는 것은 무관

  • 다만 요구사항들은 모두 커버해야함

(채점기준: 문서화 20점 / 요구조건 구현 30점 / 아키텍처 개발 40점)



4.3. 주로 사용될 패턴을 준비해 놓아라

  • 아이콘 템플릿 사용

  • 구조 패턴 미리 정의

    - 상태머신, 사용자 컨트롤 (새VI를 만들어 상태머신 구조를 만들어 놓고, 시험이 시작되면 만들어 놓은 것을 복사 붙여넣기 하여 계속해서 SubVI를 만든다.)
    - 아이콘 디자인 (아이콘도 미리 템플릿으로 저장을 해놓는다.)
    - 커넥터 팬

 

  • 복사 및 붙여넣기 : 다른 이름으로 저장을 사용하여 SubVI 증대

 


4.4. Develop이 아닌 Architect에 집중하라

  • 프로젝트 아키텍처 및 설계 (아키텍처가 큰 구조를 만들고, 디벨로퍼가 모듈을 담당하여 기능을 구현) 

  • 팀 위주의 설계, 개발 및 표준화 방식

  • 재사용 가능한 구성요소 설계


4.5. 본인만의 구조를 고안하라(가장 어려운 부분이기도 하다


샘플로 연습을 하기 때문에, 그것을 따라 할 수 밖에 없지만, 그것으로 큰 점수는 받지 못한다.

  • 큐 메시지 핸들 구조  

  • 객체 지향 프로그래밍 방식(LabVIEW OOP)

  • 액터 프레임 워크(Actor Frame Work) 사용

  • 그 밖의 다른 형태, 방식, 구조 활용