본문 바로가기
학교/객체지향 프로그래밍 - JAVA

Bouml 실행해보기(Tutorial)

by 킴도비 2021. 6. 1.

Bouml을 실행한 후

 

1. Project -> New 한 후 폴더를 하나 선택해 줘야 하는데 마땅한 폴더가 없어서 Bouml_File 폴더를 하나 생성해주고 선택해 주었다.(참고로 생성할 때 C 나 D 파일 안에 만들어 줘야 한다 멋 모르고 C:\Program Files (x86)\Bouml 여기 내부에 만들었다면 당연히 파일이 안뜬다 꼭 참고 바란다.)

 

2. 안으로 또 들어가면 빈 공간이 나오는데 현재 디자인 패턴 실습을 하고 있으므로 파일 이름에 design_pattern이라고 입력해준다. 저장 해준다.

 

3. 그러면 Bouml로 돌아오면서 알림창 하나가 뜬다. 프로그래밍 언어를 선택하라고 알려준다.

접속하면 뜨는 알림창

 

4. OK를 누른후 Languages를 누른 후 현재 자바 언어를 사용하고 있기 때문에 Java management and default definition을 선택해 준다. 자신이 사용하고 있는 언어를 눌러주면 된다.

언어 선택 화면

 

5. Bouml_File을 생성 후 안에 design_pattern 생성 그리고 src 파일을 생성해준다. src 파일은 안에서 소스를 작성해야 하기 때문에 소스 파일로서 생성해준다.

- 파일 위치 : C:\Bouml_File\design_pattern

src 외에 다른 파일들은 손대면 안된다!!

 

6. 완료되면 Bouml로 돌아와 프로젝트를 우클릭한 후 패키지를 생성(New Package 선택 후 패키지 이름 입력)해준다. 나는 각각 ch01, ch02, ch03으로 생성해 주었다.

생성된 화면

 

7. 디자인 모델들을 생성해줘야 하기 때문에 원하는 패키지를 선택후 하위 패키지들을 생성해주었다. 패키지 만드는 방법은 원하는 패키지를 선택 후 우클릭 뒤 New Package로 만들었다. ch01 - modeling01, modeling02, modeling03으로 만들어 주었다.

 

8. 그림을 그려주기 위해 modeling01을 선택하고 New class view를 선택해서 cv modeilng01이라는 파일을 생성해준다. 그 다음에는 코드를 만들 때 사용하는 New deployment view라는 것을 선택해서 dv modeling01이라는 파일을 생성해준다.

생성해준 파일들

 

9. 제일 상위에 있는 design_pattern을 선택하고 Edit drawing settings를 선택하고 show classes mombers full definition 부터 모두 다 yes로 바꿔준다. 단, show context in classes members definition에서는 uml을 선택해준다. 이렇게 바꿔주면 design pattern 하위 패키지들이 다 영향을 받는다. 전부 다 보이게 하기 위해 다 yes로 바꿔주는 것이다. 다 했다면 OK를 눌러주면 된다.

 

 

10.  Miscellaneous를 선택하면 Bouml 환경 설정을 바꿀 수 있다. Miscellaneous에서 Diagram default format에서 Iso A3를 선택해준다. (화면 사이즈 선택)

 

 

 

11.  아까 생성해둔 cv modeling01 을 선택하여 우클릭한 후 New class diagram을 선택 후 cd modeling01을 생성해 준다. 

 

12. cd modeling01을 더블 클릭하면 그릴 수 있는 화면이 나온다. 여러 아이콘 중 네모 안에 줄 두개 있는 것을 선택한 후 빈 곳에 마우스를 클릭하면 클래스 이름을 적으라고 한다 그러면 원하는 것으로 입력해주면 된다. 나는 Duck으로 생성했다.

클래스 만드는 아이콘
Duck 클래스 생성

 

13. Duck을 우클릭 후 Add Operation을 한 후 display라고 입력해준다. 그러고 OK를 하면 하나의 창이 뜬다. value type(리턴 타입)을 지정해준다. void로 지정해 주었다.

끝나고 OK를 눌러주면 된다.
생성된 display를 볼 수 있다.

 

14. 추상화를 해주어야 하기 때문에 Edit operation에서 dispaly() : void 선택 후 13번과 같은 창이 뜨면 abstarct(중앙쯤에 있다)를 선택해준다. 그러면 Duck도 함께 추상화가 된다. 메소드 중 한개라도 추상화가 되면 클래스도 추상화가 된다.

추상화 된 것. 글씨가 조금 기울어져 있다.

 

15. 그 후 원하는 만큼 클래스와 메소드를 생성해준다. 

 

- 잠시 화살표 관련해서 간단하게 몇개만 설명해 보자면

왼쪽부터 차례대로: 일반화 - 구현관계 - 의존 관계

 

왼쪽부터 차례대로: 연관 - 화살표가 있는 연관

- 화살표 사용 법은 해당하는 화살표 선택 후 하위 클래스 먼저 선택 후 상위 클래스로 드래그해주면 된다.

※ 만약 모양이 안예뻐서 삭제했다가 같은 화살표를 다시 선택했는데 오류가 나면서 bouml already generalize와 같은 오류가 뜬다면 왼쪽에서 클래스 아래에 있는 <generalisation>이나 자신이 사용했던 화살표를 다시 화면으로 끌고 오면 화살표가 다시 나타난다. 참고로 위치가 마음에 안든다고 지우는 것보단 하위 클래스를 이동하는 것을 추천한다.

 

16. 상위 클래스에 있는 메소드를 하위 클래스로 오버라이드 하는 법은 하위 클래스 우클릭 Add inherited operation 후 원하는 메소드 클릭

생성한 화면들(구상 클래스)

 

- 추가로 선 우클릭 후 Geometry해서 원하는 것을 선택하면 바뀐다. 선의 처음과 끝 지점 중에서  원하는 지점에서 드래그 하면 점이 생기면서 각도를 조절할 수도 있다. Geometry에서 맨 아래껄 사용하면 옆에 선과 겹쳐 진다.

Geometry를 실행한 화면

 

- 그 외 클래스를 잘못 생성하거나 패키지를 잘못 생성 후 우클릭으로 삭제를 했는데 X 표시만 남고 사라지지 않는다면 저장후 Bouml을 껐다 키면 사라져 있을 것이다. 

 

17. deployment view를 사용해보자. 왼쪽 화면에 dv modeling01을 선택 후 New deployment diagram을 선택 후 dv modeling01을 생성해준다. 사용할 수 있는 것만 생성 됨. cv modeling01으로 부터 소스 코드를 만들 것이다. cv modeling 선택 후 우클릭 -> Edit에서 deployment view에서 dv modeling01 선택후 OK. 

 

18.  왼쪽 화면 modeling01 우클릭 Edit 후 Java 선택 소스코드가 생성될 폴더를 선택하는 곳. Browse 선택 저번에 만들었던 src 폴더 선택! 후 자신이 원하는 패키지로 생성! design_pattern.ch01.modeling01로 생성했다. 이렇게 해주면 직접 import하지 않아도 된다.

 

19. cd modeling01에 있는 클래스들 우클릭해서 Create source artifact를 해주면 dv modeling01에 자동 생성 된다.

20. dv modeling01 우클릭 후 Generate -> JAVA 선택 하면 파일들을 볼 수 있다. Close 해준다. 넷빈즈나 자바 환경 프로그램을 켜준다. 프로젝트를 생성한다. Java with Maven -> Java Application -> Project Name : design_pattern, 패키지 명은 Bouml 생성시 만들었던 것과 동일하게 해준다.

 

21. 파일 목록을 볼수 있게 Files를 선택 후 design_pattern을 우클릭 후 New-> Java Package 선택 후 이름을 변경해야하는 곳 뒤에다가 ch01.modeling01을 붙여준다. Bouml의 패키지 이름과 동일. 

 

22. 그 후 넷빈즈에서 modeling01 파일에다가 아까 src 파일에서 생성되었던 dv modeling01에 있는 파일들을 복사(또는 바로 드래그엔 드랍해도 된다!) 해서 넣어준다. 오류가 뜬다면 패키지 명을 잘못입력했기 때문에 나오는 것이기 때문에 꼭 Bouml과 자바 프로그램 내에서 패키지 명이 동일해야 한다.

- 파일 위치: C:\Bouml_File\design_pattern\src

 

23. 여기까지 무사히 왔다면 임시로 잘 돌아가는지 보기 위해 자바(넷빈즈) 내에서 간단하게 출력만 해본다. 일단 Duck에 아래와 같은 명령어를 입력하고, Java Main Class를 TestDrive라는 명으로 생성한다.

 

24. 메인 클래스에서 Duck을 불러오면 된다~!

 

 

 

 

'학교 > 객체지향 프로그래밍 - JAVA' 카테고리의 다른 글

Bouml 설치하기  (0) 2021.06.01