RadarURL

조회 수 3589 추천 수 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 928061
1326 경제 SKT 요금약정 할인제도 파헤치기 JaeSoo 2012.11.16 2357
1325 웹 프로그래밍 Nginx 웹서버 성능분석 file JaeSoo 2012.11.20 4087
1324 웹 프로그래밍 강력한 웹서버 NGINX JaeSoo 2012.11.20 5067
1323 웹 프로그래밍 NGINX 소개와 사용 현황 file JaeSoo 2012.11.20 4664
1322 웹 프로그래밍 Xpress engine nginx rewrite 설정, 짧은주소 (xpressengine) file JaeSoo 2012.11.20 18569
1321 기타 성인용품, 해외구매 가능할까? file JaeSoo 2012.11.22 3614
1320 경제 성인용품 쇼핑몰 불법인가요? 2 JaeSoo 2012.11.22 4560
1319 경제 대출을 둘러싼 불편한 진실 1부 JaeSoo 2012.11.22 3077
1318 경제 대출을 둘러싼 불편한 진실 2부 JaeSoo 2012.11.22 3075
1317 경제 대출을 둘러싼 불편한 진실 3부 JaeSoo 2012.11.22 3161
1316 육아,교육 [2013년 누리과정도입(무상보육지원) 및 양육수당 확대] 내년 만3~4세아 누리과정 도입, 만0~2세아 양육수당 지원확대 file JaeSoo 2012.11.24 4206
1315 육아,교육 2013년 보육료지원 보육정책 자세히 알아보아요!! file JaeSoo 2012.11.24 6858
1314 모바일 안드로이드폰 네이버 캘린더 위젯이 갑자기 안보임 JaeSoo 2012.11.26 6077
1313 유닉스/리눅스 Micosoft Windows에서 리눅스를 coLinux!! file JaeSoo 2012.11.30 5130
1312 논문 PSEUDOCODE STANDARD JaeSoo 2012.12.03 4689
» 논문 Pseudo code 기반의 UML 툴에 대한 아이디어.. JaeSoo 2012.12.03 3589
1310 모바일 안드로이드폰 스크린 캡쳐!! file JaeSoo 2012.12.05 6968
1309 웹 프로그래밍 [Fedora9] Apache & PHP 설치 JaeSoo 2012.12.06 3664
1308 유닉스/리눅스 SULinux 2.0 설치 가이드 file JaeSoo 2012.12.06 5530
1307 유닉스/리눅스 SULinux 2.0 APM 인스톨 툴 file JaeSoo 2012.12.06 5436
Board Pagination Prev 1 ... 53 54 55 56 57 58 59 60 61 62 ... 124 Next
/ 124


즐겨찾기 (가족)

JAESOO's HOMEPAGE


YOUNGAE's HOMEPAGE


장여은 홈페이지


장여희 홈페이지


장여원 홈페이지


즐겨찾기 (업무)

알리카페 홀릭

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

말레이시아 KL Sentral 한국인 GuestHouse


즐겨찾기 (취미)

어드민아이디

유에코 사랑회

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

JServer.kr

제이서버 메타블로그

재수 티스토리


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

재수 강의 홈페이지


한소리


VTMODE.COM


숭실대 인공지능학과


숭실대 통신연구실


베너