Functional Specification 기능정의서

  • 시스템이나 소프트웨어의 기능적 요구사항을 명확히 정의한 문서
추상적인 표현 직설적인 표현 기능적인 표현
출발하기 대상의 속도를 3으로 PathFollower.speed = 3
멈추기 대상의 속도를 0으로 PathFollower.speed = 0
목적지에 도착하면 대상이 특정위치에 있는 물체와 닿았을때 OnTriggerEnter(){}
미션을 클리어 하면 총알이 표적에 닿으면 기록한다
3번 닿으면 미션 클리어
OnTriggerEnter(){hit++;}
if(hit>=3){}
키보드를 눌렀을 때 키보드의 스페이스바를 눌렀을 때 Input.GetKeyDown(Keycode.SPACE)
시간이 지나면 시간을 기록한다
기록된 값이 50을 넘겼을때
time+=Time.DeltaTime;
if(time>50){}
대상을 처다보고 있으면 VR카메라가 바라보고있는 벡터
VR카메라로 부터 대상의 벡터
정규화 하여 단위벡터로 변환
두 단위벡터 사이의 각도 계산
각도가 20도 이하면
Vector3 vec1 = Camera.transform.forward
Vector3 vec2 = Camera.transform.position - target.transform.position
Vector3 vec1_normal = vec1.normalized; Vector3 vec2_normal = vec2.mormalied;
float angle = Vector3.Angle(vec1_normal, vec2_normal);
if(angle <= 20){}
  • 추상적인 표현은 기능에 대해 명확히 이해하지 못한 상태에서 하고싶은 일을 기록
  • 직설적인 표현은 하고싶은 일을 달성하기 위해서 직접적으로 어떤 행동을 해야 하는지 기록
  • 기능적인 표현은 해당 행동을 하기 위해 어떤 절차가 필요한지 기록

기능정의서의 필요

  • 기능정의가 명확히 되어야 내가 어떤 기능이 준비되었고, 어떤 기능을 만들 수 없는지를 파악할 수 있습니다.
  • 전체 공정이 어느정도 진행되었는지를 파악할 수 있습니다.