2021년 5월 8일 글 마이그레이션 입니다. 지금이랑 이해나 관점이 달라졌을 수 있겠네요.
학교 과제로 읽기 시작한 논문인데, 이 논문 읽기를 고른 이유는 별 것 없고, 줌을 통한 비대면 프로그래밍을 하면서 너무 효율이 낮아서 화나 있을때 논문을 골랐기 때문입니다. 처음 읽는 거라 오래 걸려서 부분 부분 토막쳐서 메모해놓은 게 많아서 따로 정리합니다.
ABSTRACT
- (문제 사항)원격 프로그래밍은 여러 이유로 어려운데, 그 이유 중 하나는 상대방이 어디를 보는지 알 수 없기 때문입니다.
- (만든 거)그래서 Pair Programming에서 현재 보고 있는 지점을 서로에게 알려주는 시스템을 만들어서, 테스트를 하였습니다.
- (만든 거) 참여자가 보는 곳을 표시해주고, 같은 곳을 보고 있으면 색이 바뀌며, 불필요하게 관심을 끌지 않으면서 시선 인식의 부정확성을 반영하여 설계를 하였습니다.
- (결과)더 많은 암묵적인 언급을 더 많이 하였고, 그러한 언급에 더 빠르고 성공적으로 응답하였습니다.
INTRODUCTION부터 RESULT에 이르기까지 전체적인 논문의 요약입니다. 문제 상황을 설명하고, 뭘 만들었고, 그 것을 사용한 결과를 전체적으로 언급하였습니다.
INTRODUCTION
- 원격 근무에 대한 관심이 올라가고 있습니다.
- 이 논문은 2017년에 나온 거긴 하지만 이로부터 2년 정도 지난 이후엔 단순한 관심이 아니라 의무 상황이 되어 버렸죠.
- 원격 근무와 관련된 기술이 발전하고 있지만 여전히 제스처 같은 중요한 요소들이 전달이 안 됩니다.
- 이를 해결하기 위해 eye-tracker를 사용할 수 있다는 결과가 있습니다. [27]
- 선행 연구들은 뒤의 단락에 더 자세히 나옵니다.
- 이 논문에서는 pair programming에 적용하였습니다.
- Pair Programming은 인기있고 효과좋은 방법이지만, 특별한 컴퓨터 셋업과 환경이 필요합니다.
- Pair Programming은 시선 공유를 적용하기에 굉장히 좋은 분야입니다. - 2명이서 강하게 엮여있는 작업이고, 동시에 진행되며, 협력적인 작업이기 때문이죠.
- 그렇지만 지금 사용되는 Skype 같은 툴로는 한계가 있다.
- 이 연구에선는 within-subjects experiment로 gaze visulization과 gazeinfromation의 공유가 어떻게 pair programming에 영향을 주는지 초점을 맞추었습니다.
- within-subject는 모든 피험자가 모든 조건에 노출된는 실험을 의미합니다
Related Work
- 안구 움직임은 소통에서 중요한 정보를 제공합니다.
- 화자는 물체를 언급하기 전에 물체를 본다
- 청자는 물체 언급을 들으면 그 물체를 본다
- 원격 근무에 있어서 시선 공유로 모호함을 해결한 사례가 기존에 존재한다.
- 기존 시선 공유 디자인은 점으로 보여주는 것인데, 우리 디자인은 산만함을 피하기 위해 좀 다르다.
SURVEY
여기서 부터 본격적인 사용자 조사와 디자인 프로세스가 시작됩니다.
- 500명 조사했고, 32%의 응답률이었습니다.
- 52.7%는 페어 프로그래밍이 효율을 증가시킨다고 말했습니다.
- 원격 근무와 관련해서, 제약이 없으면 주 40시간 근무 중에 11시간은 원격으로 근무하고 싶다고 했습니다.
- 하지만 페어 프로그래밍 경험이 있는 87명의 응답자 중에서 18.9%만이 원격 페어 프로그래밍 경험이 있었습니다.
- 나머지는 그러지 못했는데, 40.3%는 그러려고 했으나, 기술과 매니지먼트의 문제로 그러지 못할 것이라 생각해 하지 않았습니다.(예) 스카이프의 스크린 공유는 협력 프로그래밍/에디팅 기능이 없음)
- "I don't think our technology would support it enough to be effective"
PILOT OBSERVATION
- 2명씩 이루어진 3팀을, 2명이 관찰하며 비디오로 녹화하였음
- 첫번째 팀: 한 컴퓨터에 듀얼 모니터(거울 모드 연결)
- 한명이 저번에 다른 사람이랑 작성한 코드를 보며 리팩토링을 진행합니다.
- 두번째 팀: 전통적인 driver/navigator role (사수/부사수)
- 한명의 듀얼 모니터 앞에서 다른 한명이 관찰하며, driver가 작성을 하면 그걸 navigator에게 설명하고 driver는 방향을 잡아줍니다.
- Mobbing
- 커다란 스크린 앞에서 여러 명이 앉아았고, 한 명은 키보드를 잡고 진행한다
- 관찰 결과, 원격 근무가 힘든 이유 3가지를 찾아낼 수 있었습니다.
- Eye-Contact가 안 됩니다.From an outisde observer's perspective, pair programming looks more like a social, conversational acitiviaty than an activity purely about the program on the monitor
- 여기서 굉장히 좋은 문구가 나왔네
- 제스쳐가 전달이 안 됩니다.
- verbal과 gerstural references를 하는데 전달이 힘듭니다.
- 특히 Mobbing 팀이 힘들어 햇으며, 여러번 쓰이는 함수일 경우 더 힘들어 했습니다.
- 연구팀은 시선공유를 on-screen visualization을 하면서 references to locations on screen 하는 부분에 집중하기로 하였습니다.
GAZE VISUALIZATION
이후에 진행한 내용이 한번 더 요약되어 있습니다.
- novel , shared gaze visualizzation을 만들어서, 파트너가 어디를 보는 지 알 수 있도록 했습니다.
- 이 효과를 확인하기 위해 within-subject로 two refactoring task를 한번은 시선공유, 한번은 시선공유 없이 진행하였습니다.
- 그들이 어딜 보는지, 그리고 어떻게 특정 위치에 대해 소통하는지 가지고 평가를 진행하였습니다.
- post-task 설문조사와, 인터뷰를 진행하였습니다.
- 결과: 시선 공유하면, 같은 장소를 더 많이보고, 어딜 말하는지 이해하는 속도가 빨라지고, implicit한 언급을 더 많이 하게 됨.
Design Process
- 기존 시스들은 작고 빠르게 움직이는 점으로 표현했으나, 이 디자인은 집중을 방해했습니다.
- 초기 디자인은 유저가 보는 영역의 전체 배경색을 바꾸었습니다.
- 너무 산만하여 highlight rectangle의 크기를 줄임
- 포함되는 전체 범위를 조정함
- 최종 디자인
- vertical span으로 5줄, 기본 폰트와 대비되는 색 2가지를 준비하여 20px 크기
Gaze Visualization Design
- 최종 디자인은 위에 언급한 내용
- 시선 변화 정도에 따라 rectangle이 움직이는 정도가 다릅니다.
- rectangel 영역 안: 움직이지 않음
- 1,2 라인 벗어남: smoothly scrooll
- 많이 벗아남: 그 곳을 기준으로 사각형을 옮김
- 유저끼리 같은 영역을 보면 초록색이 되고, 아닐 경우에는 노란색이 되도록 설게했습니다.
STUDY METHOD
Participants
- Agile development mailing list로 24명의 참가자를 모집하였습니다.
Setup
- Survery 결과, 가장 흔한 pair programming 형태인 한 컴퓨터와 공유화면을 반영하여(원격 근무의 경우, skype 활용) 한 컴퓨터에 두 모니터를 준비하는 것으로 진행하였습니다.
- 각각 Tobii TX300, Tobii EyeX 트래커와 모니터를 활용하였고(EyeX는 한 컴퓨터에 2개 설치 불가), GoPro Hero3로 facial expressions를 녹화하였습니다.
- Visual Studio 2015의 extenstion 형태로 제작하여, eye tracking log도 저장하였습니다.
Task
- 2*2 counterbalanced(gaze awareness and task), within-subject로 진행되었습니다.
- 주어진 태스크는 Flappy Bird-like game을 clean up 하는 것
- 본격적인 작업을 하기 전에, 코드에 익숙해지게 하기 위해 간단한 작업을 주고 그것이 끝나면 진행하였습니다. (이건 기록은 안함)
- 그 다음에 본격적으로 태스크를 진행
- 이후 각 태스크가 끝나면, 13개의 문항으로 이루어진 Likert-scale 설문을 진행하여 그들의 퍼포먼스에 대한 느낌을 물어봤습니다.
- McCroskey and McCain on task attractiveness
- Begel and Nachiappan on qualities of good pair programming partners
- 이 다음에 인터뷰를 진행하였습니다.
Video Analysis
- 비디오를 녹화하면서, reference나 verbally acknowledge를 확인합니다.
- 이때, reference의 조건이 Figure 5. 적혀있습니다.
Gaze Analysis
- 기본적으로 같은 시각에 같은 위치에 시선이 겹치면 true 로 기록하였으나, 시선 이동경로에 우연히 겹치는 걸 막기 위해, overlap이 100ms 미만이면 필터링 하였습니다.
- 언급에서 오버랩 까지 걸리는 시간을 측정함
- 위치를 전달할 때 파트너가 인지하는 데 걸리는 시간도 측정함
- explicit한 verbal acknowledgement가 없을 때에는 10초를 기준으로 오버랩이 일어나는 지 필터링 해서 결정하였습니다.
RESULTS
앞에서 측정한 요소들은 다음 3질문과 연결이 됩니다.
- How much time did the prticipants spend concurrentlry looking at same thing?
- What kinds of references were used by the participants?
- How successfull were references to locations inthe code?
이러한 데 있어서 가장 주요한 변수는 하나 뿐이니 one-way ANOVA로 분석되었습니다.
Timing
첫 번째 질문 분석
- 전체 일에 사용된 시간 중에서 오버랩 되어 있는 시간 비율을 가지고 측정했습니다.
- 시선공유(M 11.9%, SD 0.6%) 비시선공유(M 5.9%, SD 0.6%) F(1,35) P<0.0001
- 시선공유는 overlap을 증가시킨다. 와!
- 선행연구[44]와 비슷한 결과입니다.
Reference
시선 공유가 어떻게 reference에 영향을 미칠까?
- 총 470개의 reference을 분류를 한다음, 그 값들을 normalized해서 비율을 구햇습니다.
- 다른 유형들은 차이가 없지만 Deictic과 Specific Word에서 차이가 납니다.
- Deictic
- 시선공유(M 46% SD 46%) 비시선공유(M 18% SD 4%) F(1,11) p= 0.0004
- 시선 공유 할때 더 많다.
- Specific Word
- 시선공유(M 21% SD 3%) 비시선공유(M 34% SD 3%) F(1,11) p= 0.0004
- 시선 공유 할때 더 적다.
- 시선공유를 하면, 더 implicit한 deictic reference를 더 많이 사용하게 된다.
Acknowledged Reference
- 시선 공유 없을땐 37%, 있을 땐 44% 성공, 성공적인 reference위주로 분석을 함
- 다른 타입의 레퍼런스는 차이가 없는데, Dietic reference에서는 큰 차이를 보였습니다.
- gaze visualization이 dietic reference의 양과 성공율을 더 증가시킵니다.
- 반응 속도는 line number와 specific name 에서는 올라갔지만, 다른 리퍼런스는 영향을 받지 않았습니다.
Completion Time
이 부분은 실험 설계가 좀 잘못된 것 같은데 어쨌든
- Completion Time에는 차이가 없었습니다.
- 가능한 설명으로는 sample population 문제: 그들은 주어진 시간을 다 써서라도 조금이라도 개선 하려 하는 프로들입니다.
- 또 다른 설명으로는, 지시가 주어진 기본적인 작업이 끝나도 clean-up까지 하는 것을 권장했기 때문
Post-Task Questoinnarie
- suggestive evidence 정도로 더 집중 할 수 있었다는 응답이 있음
- 다른 질문에 있어서 큰 차이는 없다. : 아마 상호작용의 질 인식에는 큰 영향이 없기 때문
- 좀 더 긴 시간이 있으면 그 가치가 인식될지도 모른다.
Interview Results
- 어딜 보는지 서로 알 수 있어서 좋았다고 응답함
- I can get a context of where he is looking at the time, so it's a replacement for pointing
- 이전에는 방법이 없어서 라인 넘버같은 것 썼는데, 이 디자인은 훨씬 쉬었다.
- 절반 가까이 visualization을 눈치채지 못하기도 했었다고 했지만, 그래도 행동에는 변화가 나타났다.
DISCUSSION
- 커뮤니케이션에서, more deictic reference, more successfully acknowledgement
- 이해가 빠르고 전달이 잘 된 이유로
- may be due to faster grounding
- already been in sync
- 같은 곳을 쳐다봄
- 다른 mirrored된 컨텐트에도 적용할 수 있을 것
- 장치 가격에 관한 이야기
- 개선사항
- 상황이나 사용자 의사에 따라서만 보여줄 수 있게
THREATS TO VALIDITY
- 기기 정확도가 0.5도 미만이 필요했는데, 정확도는 시간에 따라 변한다. : 따라서 참가자 말에 따라 아이트래커를 재조정 할 수 밖에 없었다
- 또한 정확도 문제 때문에 사용할 수 있는 아이트래커가 제한되어서, 가격적으로 손해를 보았다
- 한 컴퓨터에 2개의 모니터가 연결된 상황이라 네트워크로 인한 여러 요소들이 구현되지 않았다.
- latency
- mirrored diplay가 아닌, distributed pair programming 상황에서는 다를 수 있다.