RadarURL

조회 수 3654 추천 수 0 댓글 0
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄

지금까지 프로그램 설계를 위해 몇 년에 걸쳐 UML 툴을 이것저것 써봤는데, 정말 마음에 꼭 드는 툴은 하나도 없었습니다. 기억나는데로 적어보면 Visio, StarUML, ArgoUML, Visual Paradigm, NetBeans UML plugin, Enterprise Architect, Metamill, PowerDesigner 등을 잠깐씩 만져봤는데, 라이센스 문제로 평가판을 받아서 써 본 툴이나 잠깐 구경만 해본 툴들은 장단점을 제대로 파악하기는 어렵고, 제대로라고까지 말하긴 뭐하지만 좀 오래 붙잡고 써 본 툴들은 Visio, StarUML 정도인것 같습니다. Visio는 그냥 드로잉 툴이라 UML 그리기가 여간 괴로운게 아니고, StarUML은 개발이 중단된 상태라 계속 사용하기가 좀 그렇죠.

이 툴들은 모두 UML로 직접 다이어그램을 그려가며 설계하는 툴들인데, 제 경우엔 이런 방식으로는 설계가 잘 안되더라구요. 반드시 설계 과정에서 좀 꼬이게 됩니다. 그래서 의사 코드(pseudo code)를 약간 작성하고, 이를 토대로 다이어그램을 그리고, 이 과정에서 나오는 문제점을 다시 의사 코드에 반영하고, 이를 다시 다이어그램에 그리고.. 하는 식으로 작업을 하게 됩니다. 그래서 제 경우엔 UML 설계가 현재의 툴들로는 좀 불편하고 번잡한 작업이 되어버립니다. 아마 제가 설계하는 방식이 UML과 딱 맞지는 않아서 그렇겠죠.

그렇다면 저 같은 사람에게 적합한 기능은 무엇일까 찾아봤습니다. 툴 상에서 UML 다이어그램과 실제 코드가 연동되어 동작하면서 다이어그램을 수정하면 바로 코드에 반영되고, 역으로 코드를 수정해도 바로 다이어그램에 반영되는 방식을 round trip engineering이라고 부르는데, round trip engineering이 제대로 구현된 툴은 상당히 고가이고, Java나 C#과 같이 이미 기반 라이브러리가 단단하게 구축되어 있고 상당부분 추상화된 언어가 아닌 다음에는 잘 동작하지도 않습니다. 제 경우엔 C++ 프로그래머이므로 C++에 대하여 round trip engineering 기능이 제공되는 툴이 있는지 찾아봤는데, 제가 찾아본 범위에서는 하나도 찾을 수 없었습니다. (뭐 결국엔 가격에 제약이 있어서 고가의 툴 몇개를 배제했기 때문이겠지만요)

그러던 차에 재미있는 프로젝트를 발견했습니다. 바로 Pseudo Code Modeling Language 라는 프로젝트인데, 의사 코드를 작성하여 다이어그램을 뽑아낸다는 접근법입니다. 이것 자체로도 괜찮기는 하지만, 이 방식은 의사 코드를 작성하는 표기법을 새로 익혀야 한다는 점이 약간 걸립니다. 편하자고 쓰는 툴인데 또 뭔가를 익혀가며 쓰는것도 문제고, 실질적으로 Java나 C#은 round trip engineering이 잘 되는 언어이기 때문에 이런 접근법이 별 필요도 없고.. 그래서, 제 생각엔 C++로 클래스 선언부만 작성하면 다이어그램이 뽑혀 나오고, 역으로 다이어그램을 만지면 클래스 선언부가 수정되는 방식의 round trip engineering 툴을 만들 수 있지 않을까 싶습니다. 완전히 C++ round trip engineering을 구현하는건 상당한 비용이 들어가는 일이니 어렵지만, C++과 유사한 의사 코드 언어를 상정하여 round trip engineering을 지원하는 설계툴을 만든다면 제 입장에서는 정말 유용할 것 같습니다. 이런 툴 어디 없나요? 좀 시간이 나면 만들어보고 싶은데, 지금은 생계의 압박이 너무 크네요. 이래서 우리나라가 오픈소스 프로젝트가 잘 안되는 모양입니다.

 

출처 : http://szmyoung.blogspot.kr/2008/09/pseudo-code-uml.html

?

공부 게시판

공부에 도움되는 글을 올려주세요.

List of Articles
번호 분류 제목 글쓴이 날짜 조회 수
공지 [공지] 공부 게시판 입니다. 처누 2003.08.18 931254
69 논문 전수데이터를 생성하는 빠른 콤비나토리얼 프로그램 (Fast Combinatorial Programs Generating Total Data) file JaeSoo 2015.07.15 672
68 논문 스코퍼스(Scopus) 지수 JaeSoo 2014.10.21 886
67 논문 [논문] Ubiquitous-City Integrated Authentication System (UCIAS) - Jae-Soo Jang, Hyung-Min Lim, Journal of Intelligent Manufacturing(JIM), February 2014, 장재수 file JaeSoo 2014.02.21 2061
66 논문 [논문] 다중링크를 이용한 다양한 크기의 데이터 전송 (Data transmission of various size that use multiplex link) - 장재수,학위논문(석사), 숭실대학교 대학원 : 컴퓨터학과(일원) 컴퓨터통신 2003. 12 file JaeSoo 2014.01.25 2877
65 논문 [논문] 조합과 순열 생성 알고리즘의 개선(Enhancement of Combination and Permutation Generation Algorithms) - 장재수,학위논문(박사), 숭실대학교 대학원 : 컴퓨터학과(일원) 컴퓨터통신 2013. 8 file JaeSoo 2014.01.25 2622
64 논문 제 논문에 실린 감사의 글입니다 JaeSoo 2013.06.12 7217
63 논문 박사학위논문을 끝내고 감사하는 마음의 글 JaeSoo 2013.06.12 5939
62 논문 로그(Log)에 대하여.. JaeSoo 2013.06.10 3668
61 논문 Excel 엑셀, 상용 로그, 자연 로그(LOG) 구하기 계산 함수; Common, Natural Logarithm JaeSoo 2013.06.10 6940
60 논문 논문 투고 과정 file JaeSoo 2013.06.07 4837
59 논문 수리과학 영어논문 작성법 file JaeSoo 2013.06.07 5237
58 논문 논문 작성과 형식 - 1.10 퇴고와 기타사항 JaeSoo 2013.05.19 4847
57 논문 논문 작성과 형식 - 1.8 표와 그림 JaeSoo 2013.05.19 5759
56 논문 논문 작성과 형식 - 1.9 주와 참고문헌의 처리 JaeSoo 2013.05.19 4410
55 논문 논문 작성과 형식 - 1.7 인용과 인증 JaeSoo 2013.05.19 4678
54 논문 논문 작성과 형식 - 1.6 논문 작성시 문장의 형식 JaeSoo 2013.05.19 6252
53 논문 논문 작성과 형식 - 1.5 논문의 내용 전개 JaeSoo 2013.05.19 4922
52 논문 논문 작성과 형식 - 1.4 논문의 내용구성 JaeSoo 2013.05.19 5171
51 논문 논문 작성과 형식 - 1.3 논문의 작성의 개요 JaeSoo 2013.05.19 5210
50 논문 논문 작성과 형식 - 1.2 학술논문의 형식 JaeSoo 2013.05.19 6558
Board Pagination Prev 1 2 3 4 Next
/ 4


즐겨찾기 (가족)

JAESOO's HOMEPAGE


YOUNGAE's HOMEPAGE


장여은 홈페이지


장여희 홈페이지


장여원 홈페이지


즐겨찾기 (업무)

알리카페 홀릭

숭실대 컴퓨터 통신연구실 (서창진)

말레이시아 KL Sentral 한국인 GuestHouse


즐겨찾기 (취미)

어드민아이디

유에코 사랑회

아스가르드 좋은사람/나쁜사람

JServer.kr

제이서버 메타블로그

재수 티스토리


즐겨찾기 (강의, 커뮤니티)

재수 강의 홈페이지


한소리


VTMODE.COM


숭실대 인공지능학과


숭실대 통신연구실


베너