본문 바로가기

프로그래밍

[객체지향설계] UML의 개요



UML이란?
Unified Modeling Language의 약자로 객체지향 분석(Analysis)과 설계(Design)를 위한 modeling Language이다. 이는 Booch, Rumbaugh(OMT), Jacobson등의 객체지향 방법론(methods)에 관한 석학들이 내어놓은 방법론의 통합으로 이러한 방법론의 명맥을 잇는다고 볼 수 있다. 또한 객체 기술에 관한 국제 표준화 기구인 OMG(Object Management Group)에서 이미 UML을 표준화로 인정했으며 현재 ver2.0까지 만들어져 있다


UML의 역사

이제 UML에 대한 이해를 하기에 앞서 간략하게 UML의 역사를 되돌아 보도록 하겠습니다. Grady Booch, James Rumbaugh와 Ivar Jacobson, 세 사람은 80년대부터 각자의 객체지향 방법론을 연구합니다. 1994년 Booch가 세운 Rational사에 Rumbaugh가 합류하고, 일년 후 Jacobson이 합류하면서 이들의 연구는 하나로 결집되어 UML 드레프트(draft) 버전을 만들어냅니다. 이것은 소프트웨어업계에 큰 반향을 일으키며 Microsoft, Oracle, HP, DEC, TI 등 유수의 멤버로 결성된 UML 컨소시엄을 발족하게 됩니다.

1997년 UML 컨소시엄은 UML 버전 1.0을 만들어 내고 이를 OMG(Object Management Group)에 제출합니다. 그 해 말에 OMG는 이를 수정한 UML 1.1을 표준 모델링 언어로 채택하기에 이르죠. 현재 1.3 스펙에 이어 1.4 버전까지 논의되고 있습니다.


UML의 구성

클래스 다이어그램(Class Diagram)

객체 다이어그램(Object Diagram)

쓰임새 다이어그램(Use-case Diagram)

상태 다이어그램(State Diagram)

시퀀스 다이어그램(Sequence Diagram)

활동 다이어그램(Activity Diagram)

협력 다이어그램(Collaboration Diagram)

컴포넌트 다이어그램(Component Diagram)

배치 다이어그램(Deployment Diagram)