Usecase
사용자가 어떤 목적을 달성하기 위해 시스템과 주고 받는 전형적인 교류를 Usecase라 한다. usecase는 규모 면에서 다양하게 변활 수 있다. 중요한 것은 usecase는 사용자가 이해할 수 있고 사용자에게 어떤 가치를 주는 기능을 의미한다. 우리는 구축하고 있는 시스템에서 사용될 수 있는 잠재적 usecase들을 알아내는 것이 중요하다. 하지만 usecase가 자세할 필요는 없다. (어쩌면 유즈케이스는 요구사항으로 볼 수 있을 듯 하다.)
Domain model
UML Distilled 도서에서 발췌한 예시를 통해 도메인에 대해 알아보자.
고객들은 여러 사이트에 흩어져 있고 우리는 이들 사이트에 여러 가지 서비스를 제공한다. 현재 상태로는 고객은 모든 서비스에 대한 청구서를 주어진 사이트에서만 받는다. 우리가 원하는 것은 고객들이 모든 사이트에 대한 모든 서비스에 대해 한 곳에서 청구서를 받도록 하는 것이다.
위 문장을 통해 우리는 고객, 사이트, 서비스 라는 말들을 확인할 수 있고, 이 용어들이 바로 시스템 내 객체를 표현하게 해주는 도메인 모델로서 작용하게 된다. 도메인 모델은 우리가 어떤 개발 단계에 있든지 컴퓨터 시스템이 지원해야 할 실세계를 주요 대상으로 삼는 모델을 말한다.
도메인 모델과 유즈케이스를 알아냈다면, 이제는 Design model을 설계해야한다. Design model은 도메인 객체의 정보와 유즈케이스의 행동을 실현시키는 것을 말한다.
UML 기호
uml 기호 관련해서 시간이 나는 김에 아래처럼 정리해보고 있었는데, 너무 좋은 블로그를 발견해서 정리하다 말았다 😂 해당 블로그는 넥스트리 블로그 이다. uml과 관련하여 나처럼 기본 지식이 부족하다면 한번 보는 것을 추천!