2.1.IntroductionWebToolkit.md 7.07 KB
Newer Older
HooYoungAhn's avatar
HooYoungAhn committed
# KSB 웹툴킷 개요
HooYoungAhn's avatar
HooYoungAhn committed
**KSB 웹툴킷** 은 사용자가 프레임워크를 효과적으로 사용할 수 있도록 지원하는 웹기반의 저작 도구입니다. **KSB 웹툴킷** 은 워크플로우를 정의하고 실행하는 기능과 실행 과정을 모니터링하는 기능, 그리고 관련 데이터를 업로드하고 결과를 시각화하는 기능 등을 지원합니다. **KSB 웹툴킷** 은 회원가입을 통해 로그인을 하여 사용하며 사용자별로 워크플로우를 관리합니다.

## 웹을 통한 접속 및 로그인
먼저 >KSB 인공지능 프레임워크 실행하기 매뉴얼을 참고하여 KSB 프레임워크를 구동합니다.
HooYoungAhn's avatar
HooYoungAhn committed
Chrome 브라우저(또는 HTML5 표준 호환 브라우저)를 열고 <a href="http://localhost:8080/">http://localhost:8080</a> 에 접속합니다. 로그인 페이지를 볼 수 있으며, 다음과 같이 기본적으로 제공하는 사용자 정보(수퍼관리자)가 저장되어 있습니다.
- User ID : `ksbuser@etri.re.kr`
- User Password : `ksbuser@etri.re.kr`

사용자 ID 와 암호를 입력한 후 로그인 합니다. 위 아이디로 로그인할 경우 워크플로우 예제가 저장되어 있습니다.

![Figure](images/2.1_signin.png)


## 기능 및 메뉴 구성
KSB 웹툴킷에 로그인을 하면 대시보드 화면이 보이고, 화면 상단에 다음과 같은 메뉴가 있습니다.

### Dashboard

대시보드에서는 KSB 웹툴킷에 로그인 한 사용자가 작성하여 저장하거나 실행한 워크플로우 정보 및 현재 서비스 되고 있는 정보를 한 눈에 파악할 수 있습니다. (다른 사용자가 작성하여 저장하거나 실행한 워크플로우는 나타나지 않습니다.) *Workflow TOP 10* 에서는 수행된 워크플로우의 통계 정보(수행 횟수, 수행 결과, 수행 경과시간)를 보여줍니다. *Workflow* 에서는 사용자가 작성하여 저장한 워크플로우의 리스트를 보여줍니다. 삭제(<span style="color:red">&#9747;</span>) 버튼을 눌러 해당 워크플로우를 삭제할 수 있습니다. 또한 특정 기간에 작성된 워크플로우를 검색하여 볼 수 있습니다. *Services* 에서는 현재 서비스 되고 있는 서빙 엔진들(온디맨드방식 처리 엔진들)의 세부 정보를 보여줍니다.

![dashboard Figure](images/2.1_dashboard.png)

### Workflow Editor
워크플로우 편집기에서는 그래픽 기반의 워크플로우 편집 기능을 사용하여 워크플로우를 작성하고 실행할 수 있습니다. 또한 워크플로우를 저장하고 로딩할 수 있으며 별도의 Json 파일로 Import/Export 할 수 있습니다. 워크플로우 편집기는 별도의 창으로 생성되며, 여러 개의 창을 동시에 띄워서 워크플로우를 각각 편집하고 실행할 수 있습니다. 구체적인 사용 방법은 <a href="./2.2.WebToolkit_Workflow.html">워크플로우 편집기 소개</a> 를 참조합니다.

![workflow Figure](images/2.1_workflow.png)

### Repository
KSB 인공지능 프레임워크는 **하둡파일시스템(HDFS)** 을 기본적으로 사용합니다. 데이터 저장소 관리에서는 사용자가 HDFS에 파일을 업로드 하거나 다운로드 하기 위한 인터페이스를 제공합니다. 워크플로우에서 사용하는 데이터 파일, 모델 파일, 결과 파일 등을 관리할 수 있습니다. 사용자가 원하는 파일 내용을 확인하거나 신규 디렉토리를 생성하고 파일을 업로드할 수 있는 기능을 제공합니다. 구체적인 사용 방법은 <a href="./2.3.1.WebToolkit_Repository.html">데이터 저장소 관리</a> 를 참조합니다.

![repository Figure](images/2.1_repository.png)

### Monitoring
 진행내역/상태 모니터링에서는 KSB 프레임워크에 제출된 워크플로우(워크플로우에 속한 엔진 포함)의 목록 및 상태를 확인할 수 있습니다. 또한 워크플로우 및 엔진의 Status에 따라 실행 중인 워크플로우 및 엔진을 종료(<span style="color:red">&#9724;</span>)하거나, 재실행(<span style="color:#6698FF">&#9654;</span>)할 수 있습니다. 또한 *Workflow Histroy* 탭에서 엔진이 실행 되어 생성된 결과파일을 확인하고 그래프로 시각화 하거나 로그 기록을 볼 수 있습니다. 구체적인 사용 방법은 <a href="./2.3.2.WebToolkit_Monitoring.html"> 모니터링 소개</a> 를 참조합니다.

![monitoring Figure](images/2.1_monitoring.png)


### Component (관리자 메뉴)
컴퍼넌트 관리는 관리자 권한을 가진 사용자만 접근할 수 있습니다. 컴퍼넌트 관리에서는 SW 개발자가 만든 신규 컴퍼넌트를 **KSB 웹툴킷** 에서 사용할 수 있도록 등록하거나, 기존의 컴퍼넌트 동작이 변경되어었을 경우 수정하는 기능을 제공합니다. 또한 웹툴킷 컴퍼넌트들의 버전을 관리할 수 있습니다. 자세한 설명은 <a href="./3.4.HowToUseComponent.html">KSB 웹툴킷에 컴퍼넌트 등록하기</a> 를 참조합니다.

![component Figure](images/2.1_component.png)


### Management (관리자 메뉴)
시스템 설정 관리는 관리자 권한을 가진 사용자만 접근할 수 있습니다. 시스템 설정 관리에서는 웹툴킷 관리자가 쉽게 웹툴킷 정보(게이트웨이 Ip, Port, 버전 정보 등)를 확인하고 수정할 수 있습니다. *User Configuration* 탭에서는 회원 목록을 확인하고 회원 가입 승인, 관리자 권한 부여, 회원 삭제 등을 수행할 수 있습니다.  

![management Figure](images/2.1_management.png)


## 회원 가입
KSB 웹툴킷은 회원가입을 통해 로그인을 하여 사용하며 사용자별로 워크플로우를 관리합니다. 자신의 계정을 생성하려면 로그인 화면에서 "신규 회원가입" 버튼을 클릭하여 이메일 인증을 통해 회원가입을 수행 합니다.

![Figure](images/2.1_joinin.png)

회원 가입 절차를 위해서는 이메일 인증을 할 메일 계정이 요구되며, **Management** 메뉴의  *System Configuration* 탭에서 설정할 수 있습니다. `javax.mail.session.prop.id``javax.mail.session.prop.password` 를 통해 각각 메일 계정과 메일 암호를 설정하여 이용할 수 있습니다. 메일은 Gmail 등을 사용하면 됩니다.
또한, 회원 가입을 위해서는 이메일 인증절차를 수행하는 PC에서 KSB 웹툴킷이 운용중인 서버에 접근할 수 있어야 합니다.


## 회원 관리
KSB 웹툴킷은 회원을 **일반사용자/관리자/수퍼관리자** 로 권한을 나누어 관리합니다. 일반사용자 계정은 Component 메뉴와 Management 메뉴에 접근할 수 없습니다. 관리자 및 수퍼관리자 계정은 Component 메뉴와 Management 메뉴에 접근 가능하고 기능을 사용할 수 있습니다. 다만, 관리자 계정은 **Management** 메뉴의  *User Configuration* 탭에서 일반사용자의 회원 가입 승인, 관리자 권한 부여, 회원 삭제 등을 수행할 수 있습니다. 관리자의 권한을 일반사용자로 바꾸거나 관리자 회원을 삭제하는 것은 수퍼관리자 계정만 가능합니다.