레이블이 staruml인 게시물을 표시합니다. 모든 게시물 표시
레이블이 staruml인 게시물을 표시합니다. 모든 게시물 표시

2013년 9월 14일 토요일

StarUML - The Open Source UML/MDA Platform

이전 블로그에서 이전 함 (원본 글 2013/09/14 작성)


UML을 지원하는 소프트웨어 모델링 플랫폼으로 버전 1.4에 기반을 두고 있으며 버전 2.0도 지원
UML 프로파일 개념과 템플릿 기반의 문서 및 코드 생성을 지원, MDA(Model Driven Architecture) 접근방법 지원.

유로 UML 모델링 툴이야 좋은 것들이 많지만 무료 중에서는 StarUML이 단연 최고일듯 하다 ArgoUML은 UI interface가 StartUML 보다는 좋지만 안정성이나 기능면에서 좀 못 미더웠음.

하지만 StarUML은 2005년 오픈소스로 전환되고 개발사가 망한 뒤 더이상 개발은 되지 않아 major한 기능 추가는 없는 상태 임.


[특징]
  • 정확한 UML 표준 모델 : OMG 표준 명세에 따라 모델 작성 가능
  • 개방적 소프트웨어 모델 포맷 : 모든 파일 포맷은 XML로 구성, 변환 사용 용이
  • 진정한 MDA 지원 도구 : UML profile을 완벽 지원, Platform Independent Model의 작성 가능
  • 방법론 및 플랫폼의 적응성 : 여러 접근법을 지원(UML, 4+1, StartUML 등)
  • 뛰어난 확장성 : Microsoft COM 자동화를 지원하는 언어에서도 StartUML을 제어하고 통합된 추가 모델 개발 가능
  • 소프트웨어 모델 검증 기능
  • 유용한 Add-In들

[모델링 Documentation]

- Diagram 종류
이어그램 종류설명
 Class Diagram클래스 다이어그램(Class Diagram)은 클래스관련 요소들의 여러 가지 정적인 관계를 시각적으로 표현한 것입니다. 클래스 다이어그램은 클래스(Class) 뿐만 아니라 인터페이스(Interface), 열거형(Enumeration), 패키지(Package) 및 여러 가지 관계들 뿐만 아니라 인스턴스(Instance)와 그것들의 연결(Link) 등도 포함할 수 있습니다.
 Use Case Diagram유스케이스 다이어그램(Use Case Diagram)은 특정 시스템 혹은 개체내의 유스케이스(Use Case)들과 그 외부의 액터(Actor)들 간의 관계를 표현한 것입니다. 유스케이스는 해당 시스템의 기능을 표현하며 그것들이 어떤 외부 액터들과 상호작용하는지를 나타냅니다.
 Sequence Diagram시퀀스 다이어그램(Sequence Diagram)은 인스턴스들이 어떻게 상호작용을 하는지를 묘사합니다. 하나의 협동-인스턴스집합(CollaborationInstanceSet)에 포함된 인스턴스(Instance)들 상호간에 주고받는 자극(Stimulus)들의 집합인 상호작용-인스턴스집합(InteractionInstanceSet)을 직접적으로 표현합니다. 시퀀스 역할 다이어그램(Sequence Role Diagram)은 역할(ClassifierRole) 중심의 관점을 반영한 반면, 시퀀스 다이어그램(Sequence Diagram)은 인스턴스(Instance) 중심의 관점을 반영한 것입니다.
 Sequence Diagram (Role)시퀀스 역할 다이어그램(Sequence Role Diagram)은 역할 개념들이 어떻게 상호작용을 하는지를 묘사합니다. 하나의 협동(Collaboration)에 포함된 역할(ClassifierRole)들 상호간에 주고받는 메시지(Message)들의 집합인 상호작용(Interaction)을 직접적으로 표현합니다. 시퀀스 다이어그램(Sequence Diagram)은 인스턴스(Instance) 중심의 관점을 반영한 반면, 시퀀스 역할 다이어그램(Sequence Role Diagram)은 역할(ClassifierRole) 중심의 관점을 반영한 것입니다.
Collaboration Diagram협동 다이어그램(Collaboration Diagram)은 인스턴스들이 어떻게 협동하는지를 묘사합니다. 하나의 협동-인스턴스집합(CollaborationInstanceSet)에 포함된 인스턴스(Instance)들의 협동 모델을 직접적으로 표현합니다. 협동 역할 다이어그램(Collaboration Role Diagram)은 역할(ClassifierRole) 중심의 관점을 반영한 반면, 협동 다이어그램(Collaboration Diagram)은 인스턴스(Instance) 중심의 관점을 반영한 것입니다.
Collaboration Diagram (Role)협동 역할 다이어그램(Collaboration Role Diagram)은 역할 개념들이 어떻게 협동하는지를 묘사합니다. 하나의 협동(Collaboration)에 포함된 역할(ClassifierRole)들의 협동 모델을 직접적으로 표현합니다. 협동 다이어그램(Collaboration Diagram)은 인스턴스(Instance) 중심의 관점을 반영한 반면, 협동 역할 다이어그램(Collaboration Role Diagram)은 역할(ClassifierRole) 중심의 관점을 반영한 것입니다.
Statechart Diagram상태 다이어그램(Statechart Diagram)은 특정 개체의 동적인 행위를 상태(State)와 그것들간의 전이(Transition)를 통해 묘사합니다. 일반적으로 클래스의 인스턴스에 대한 행위를 묘사하는데 사용되지만 그 밖의 요소들에 대해서도 얼마든지 사용될 수 있습니다.
 Activity Diagram액티비티 다이어그램(Activity Diagram)은 상태 다이어그램의 특별한 형태로써, 활동들의 수행 흐름을 묘사하는데 적합합니다. 일반적으로 작업흐름(Workflow)을 표현하기 위해 많이 사용되며, 클래스, 패키지 혹은 연산 등의 개체에 대해 주로 사용됩니다.
Component Diagram컴포넌트 다이어그램(Component Diagram)은 소프트웨어 컴포넌트 사이의 의존관계를 묘사합니다. 소프트웨어 컴포넌트를 구성하는 요소들과 그것들을 구현하는 요소들도 모두 표현될 수 있습니다.
Deployment Diagram디플로이먼트 다이어그램(Deployment Diagram)은 물리적인 컴퓨터 및 장비 등의 하드웨어 요소들과 그것에 들이 배치되는 소프트웨어 컴포넌트, 프로세스 및 객체들의 형상을 묘사합니다.
Composite Structure Diagram
복합구조 다이어그램(Composite Structure Diagram)은 분류자(Classifier)의 내부 구조를 표현하는 다이어그램입니다. 여기에는 Classifier가 시스템의 다른 부분들과의 상호작용하는 지점 등을 포함합니다.



- Project 생성 시 
  4+1 View Model (Scenarios, Logical View, Development View, Process View, Physical View),
  Default Approach (Use Case Model, Analysis Model, Design Model, Implementation Model, Deployment Model) 등을 선택할 수 있다.
- 물론 각 Model에서 원하는 View를 별도 추가 가능하다. 

Architectural Blueprints—The “4+1” View Model of Software Architecture - Philippe Kruchten


[Screen Shots]


 



2013년 8월 6일 화요일

StarUML 시작 시 에러 메세지(Cannot focus a disabled or invisible window)

이전 블로그에서 이전 함 (원본 글 2013/08/06 작성)

한동안 계속 "Cannot focus a disabled or invisible window" 에러 메시지가 
StarUML 시작 시 발생되어 귀찮았었음.

하지만 감사합니다. 궁댕이 스토리 님 :)


 최근 직장을 옮기고 좀더 많은것을 배우고 많은것을 체험해 보려고 UML프로그램 을 설치했다.
같이 일하시는 분께서 추천해주신 StarUML 을 설치해서 사용했었다.
잘 사용하고 있는데 어느날부턴가 실행하면 "
Cannot focus a disabled or invisible window" 메세지가 뜨고
사용하는 도중 오류 발생하면서 죽는거다.
그래서 좀 짜증났는데 그냥 두었다.
그런데 오늘 다시 쓰려고 켜보니 또 매한가지인거다.

구글링 통해서 알아보니 약간 버그인듯하더라.
"Model Explor" 을 자동숨김(핀셋고정안한상태)으로 해놓으면 이런문제가 발생한다고 한다.
다시 고정상태로 두니 신기하게도 오류는 사라졌다.

StarUML에서 ER diagram 그리기

이전 블로그에서 이전 함 (원본 글 2013/08/06 작성)

StarUML


오픈소스 UML modeling s/w 중에서는 가장 완성도 있음.
다만 추가 개발 및 버그 수정은 중단된 상태이고 eclipse 기반 java 버전을 2010년 부터 개발한다고 하지만 무소식.

기본적인 UML diagram들을 그리는데는 부족함이 없고
추가 module(기능)들을 Plugin으로 추가하여 사용 가능함.



StarUML에서는 Plugin으로
DB의 관계를 도식화 할 수 있는 Entity-Relation Diagram을 그릴 수 있는
ER Diagram Notation Extension을 제공함.


[설치 방법]
 How to install a module?
Installing a module is very simple.
  1. Download a module distribution package (.zip)
  2. Extract the file on StarUML module directory (e.g. C:\Program Files\StarUML\modules)

이해가 안된다면 아래 동영상 참고

 => 동영상을 통한 다운로드, 설치, 실제 ER diagram 그리기를 보여주고 있음.
 . 다운로드 => 45초
 . 압축해제 및 설치 => 54초
 . ER diagram 추가 => 2분 06초
 . Table 추가 => 2분 20초
 . PK, FK 설정 => 2분 45초
 . stereo type을 table로 설정 => 3분 43초
  : 중요한 것은 ER diagram 그릴 때 table의 Stereo type을 'table'로 설정하는 것.
    기본적으로 ERD의 table이 아닌 UML standard의 table로 설정이 되어 있어 변경 필수!!!
 . Table Relation 설정 => 4분 10초 

[기타 링크]
: 간단 설치 가이드