본문 바로가기

[ Project Plan & Design ]

UML 요점 정리 #5 - 클래스 다이어그램(2) 클래스 다이어그램(2) 1. 클래스에서 사용자 정의 구역(User-defined compartment) UML에서 미리 정의하는 부분 외에 사용자가 정의하여 작성할 수 있는 새로운 구역을 첨가할 수 있다. 2. Type and Implementation Class Type의 경우 스테레오 타입으로 'type'을 가지며, 객체가 가지는 Specification만을 표시한다. Implementation class의 경우 'ImplementationClass'를 가지며, 실제 물리적인 언어에 바인딩되게 표현한다. 3. Interface 인터페이스 클래스의 경우 스테레오 타입을 'interface'로 가지며 객체지향 언어인 java에서 사용되는 인터페이스의 의미와 동일하게 클래스의 행위만을 확정한다. 이런 인터.. 더보기
UML 요점 정리 #4 - 클래스 다이어그램(1) 클래스 다이어그램(1) 1. 클래스 클래스의 표기는 위 그림과 같다. 제일 좌측에 있는 Attribute와 Operation이 축약되지 않은 표기이고 나머지는 축약된 표기다. 2. Attribute와 Operation 추상화 단계에 따라 표기 방법이 달라질 수 있다. 예를 들어 구현 단계에 근접한 클래스 다이어그램을 도시하려면 구현하기위한 언어에 밀접한 형태의 Attribute와 Operation으로 나타내야하지만, 추상화 단계가 높을 경우 대략적인 의미 전달을 할 수 있을 정도의 표기도 괜찮다. Attribute UML 1.1 표준 형식은 다음과 같다. visibility name : type-expression = initial-value { property-string Operation의 UML 1.. 더보기
UML 요점 정리 #3 - 유스케이스 다이어그램 유스케이스 다이어그램 (UseCase Diagram) 프로젝트가 무엇인지 모르고 프로젝트를 수행할 수는 없다. 프로젝트가 무엇인지에 대해서 알아보는 것을 요구 분석(Requirement Analysis)라 하는데, 이를 위한 다이어그램이 바로 유스케이스 다이어그램이다. 즉, 프로젝트 수행시 가장 먼저 나오는 다이어그램이 유스케이스 다이어그램이고, 다른 다이어그램의 배경이 되는 중요한 다이어그램이다. 1. 표기(Notation)과 의미(Semantics) (1) 유스케이스 (Usecase) 타원으로 표시하고 이름을 속에 명시한다. (2) 유스케이스의 의미 말 그대로 쓰임새를 나타내며, 한 프로젝트의 결과물이 작동하여 사용되는 쓰임새를 분류해 나타낸다. 집이 사용되는 예를 들어보자. 집은 식사를위한 장소로 .. 더보기
UML 요점 정리 #2 - UML의 구성 UML의 구성 1. UML과 방법론의 차이 방법론이란 말그대로 어떠한 작업을 할 때 이러저러한 절차를 가지고 작업을 하면 된다라고 하는 것을 이론적으로 정립을 해놓은 것이다. UML은 이러한 방법론을 적용할 때의 결과물을 나타내기 위한 도구이다. 예를 들면, 모든 소프트웨어를 설계할 때 어떠한 표준적인 규칙을 가지고 설계도를 그려야 하는데 이때 표준이 되는 것이 UML이다. 각자 다양한 방법론을 자기의 프로젝트에 적용하더라고 UML을 공통적으로 적용할 수 있다. 2. UML의 구성 UML은 8가지 다이어그램으로 나타난다. 시스템의 정적인 면을 나타냄 - 클래스 다이어그램(Class Diagram) 시스템의 동적인 면을 나타냄 - 콜레버레이션 다이어그램(Collaboration Diagram) - 시퀀스 .. 더보기
UML 요점 정리 #1 - UML이란? UML이 무엇이며 왜 중요한가? UML은 소프트웨어 시스템이나 업무 모델링 그리고 기타 비 소프트웨어 시스템등을 나타내는 가공물을 구체화하고, 시각화하고, 구축하고, 문서화하기 위해 만들어진 언어이다. UML은 Rational Software와 그 협력회사에 의해 개발되었다. 업무 처리과정에서 그 업무의 범위와 규모가 커짐에 따른 시스템의 복잡성을 처리할 필요성을 느끼게 되었는데, 특히 물리적인 시스템의 분산, 동시성, 반복성, 보안, 결점 보완, 시스템들의 부하에 대한 균등화와 같은 반복해서 발생하는 구조적 문제에 대한 프로세스가 필요하게 되었으며다. 또한 웹의 발전에 따라 시스템을 만들기는 쉬워졌으나 이러한 구조적 문제는 더욱 악화되었기에 이러한 모든 필요성에 의해 UML은 만들어졌다. 모델링의 중요.. 더보기