모든 프로그램들은 Call Flow가 존재하며, 사용자 지향적인 프로그램일수록 사용자가 어떻게 프로그램을 사용해 나갈지, 예를 들면, 로그인부터 해서 특정 기능을 사용하기 위해 어떤 것들을 설정해야 하며, 얻어낸 결과를 어떻게 저장하고 프로그램을 종료하는지까지의 시나리오가 존재한다.
프로그램 제작 전에 완성된 내용이지만, 나중에 사용자 매뉴얼 작성 시에 도움이 될 수 있도록 지금 기록을 해놓는 게 좋을 것 같다. 물론 Flow Chart 기반의 시나리오 정리이며, 필요할 경우 지속적으로 업데이트될 것이다.
L-ATS 사용자 시나리오
실은 어떤 프로그램이든 사용자 관점에서 정의하는 시나리오는 복잡하지 않다.
사용자는 프로그램의 기능이 직관적이며 단순해야(단순하다는 어감이 조금 좋지 않은데 Simple하다가 의도하는 바와 가까운 단어다.) 잘 사용하게 된다.
개발자라면 잘 알겠지만 단순해 보이는 하나하나의 과정마다 수가지의 예외처리와 백그라운드 프로세스 작업이 존재한다는 것을 알 것이다.
사용자의 시선에서는 당연히 신경 쓸 필요 없다. 모든 기능이 오류 없이 정상적으로 처리되어야 하니 말이다.
즉, 위의 시나리오는 프로그램의 모든 기능이 정상적일 때의 시나리오이다.
설계된 L-ATS 2.0의 기능은 크게 4가지로 구분된다.
- 이베스트 증권 계좌 선택
- 스탑로스 조건 설정
- 자동 매매 시작
- 종목별 처리할 스탑로스 종류 선택
실제론 대부분의 자동매매 프로그램들이 1.~3.번 기능이 전부이다. 2.번 기능이 프로그램마다의 특징을 갖는 기능이며, 자동으로 매수하는 기능이 있는 프로그램도 있다. (L-ATS 1.0에도 존재했던 기능이나 2.0에서는 스탑로스만...)
기능 자체는 간단해 보이지만, 돈이 왔다갔다하는 프로그램이기에 얕은 지식으로 간단하게 만들 수 있는 프로그램의 종류는 아니다.
기능 구현보다 Exception 처리에 더 많은 공을 들여야 한다.
사용자는...더구나 GUI 환경에서의 사용자는 개발자가 예측하지 못한 돌발 행동을 많이 한다.
'Trading' 카테고리의 다른 글
[Trading] L-ATS 화면 설계 및 xingAPI 기능 설계 (0) | 2020.08.16 |
---|---|
[Trading] XingAPI - DevCenter 사용하기 (0) | 2020.08.14 |
[Trading] 사용자 정보 구조 (0) | 2020.07.18 |
[Trading] HTS 로그인 설계, 구현 (0) | 2020.07.08 |
[Trading] 프로그램 로그인 (0) | 2020.06.21 |