본문 바로가기

Programming

UML 모델링 기초

반응형
오랫만에 UML을 끄적여 보다보니... 기본 모델링도 너무 모르고 하는거 같아서...;

책을 참고하여 간단하게 정리해보았다.

기본 클래스를 나타내는 모양이다. 박스안에 3개의 공간으로 구분되어 있는데

첫 번째는 클래스 이름이다.
두 번재는 멤버변수 이다. (+ : public, - : private, # : protected)
세 번째는 메소드 이다. (+ : public, - : private, # : protected)





두개의 클래스를 연결하는 화살표는 연관을 나타내는 표시이다.
이게 많이 헷갈린다;;;

A안에 iA라는 변수이름으로 B인스턴스를 15개 가지고 있다는 표시이다.
즉 iA[15] 라는 변수안에 모두 B인스턴스가 있다는 것이다.
* 표시는 0개에서 무한개 이다. 자바에서 쓰이는 Vector, List가 여기에 해당한다고 한다.



상속을 나타내는 모양이다.
화살표 방향이 항상 헷갈리는것 중에 하나이다. 특히 연관쪽에서..;;

화살표는 상위클래스를 향하도록 한다.
그리는거에 따라서 화살표는 직선으로도 그릴수있고 그림과 같이 꺽은선으로도
그릴수 있다. 편한데로 하자 ㅋ

연관과 상속과의 혼동을 없애기 위해 보통 상속은 상하로 나타낸다고 한다.




추상클래스는 이탤릭체로 표현하고 인터페이스는 `<<interface>이름` 으로 표현한다.





<<create>> - A클래스가 B의 인스턴스를 생성하고 리턴한다. Factory 이다.
<<local>> - A클래스가 B의 인스턴스를 생성하고 그 지역(local)에서만 사용하는 것이다.
<<parameter>> - A클래스의 메소드가 호출될때 B의 인스턴스가 인자로 호출되는 것이다.
<<delegate>> - A의 메소드가 호출될때 B의 메소드가 호출되는 것이다. A가 B의 메소드를 대신 호출해주는것이다.

반응형